Declan Doherty [Fri, 16 Jan 2015 15:10:30 +0000 (15:10 +0000)]
mem: fix alignment parameter check
In commit
2fc8d6d the behaviour of function rte_is_power_of_2 was
changed to not return true for 0. memzone_reserve_aligned_thread_unsafe
and rte_malloc_socket both make the assumption that for align = 0
!rte_is_power_of_2(align) will return false. This patch adds a check
that align parameter is non-zero before doing the power of 2 check.
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
[Thomas: use && operator instead of ternary ?: and fix precedence with parens]
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:12 +0000 (13:59 +0800)]
app/testpmd: set Rx VMDq RSS mode
Set VMDq RSS mode if it has VF (VF number is more than 1) and has RSS information.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:11 +0000 (13:59 +0800)]
ixgbe: configure VF RSS
It needs config RSS and IXGBE_MRQC and IXGBE_VFPSRTYPE to enable VF RSS.
The psrtype will determine how many queues the received packets will distribute to,
and the value of psrtype should depends on both facet: max VF rxq number which
has been negotiated with PF, and the number of rxq specified in config on guest.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:10 +0000 (13:59 +0800)]
ethdev: check VMDq RSS mode
Check mq mode for VMDq RSS, handle it correctly instead of returning an error;
Also remove the limitation of per pool queue number has max value of 1, because
the per pool queue number could be 2 or 4 if it is VMDq RSS mode;
The number of rxq specified in config will determine the mq mode for VMDq RSS.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:09 +0000 (13:59 +0800)]
ixgbe: get VF queue number
Get the available Rx and Tx queue number when receiving IXGBE_VF_GET_QUEUES
message from VF.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:08 +0000 (13:59 +0800)]
ixgbe: negotiate VF API version
Negotiate API version with VF when receiving the IXGBE_VF_API_NEGOTIATE message.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Ouyang Changchun [Mon, 12 Jan 2015 05:59:07 +0000 (13:59 +0800)]
ixgbe: code cleanup
Put global register configuring out of loop for queue; also fix typo and indent.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Reviewed-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Tomasz Kulasek [Fri, 16 Jan 2015 14:27:52 +0000 (15:27 +0100)]
eal/linux: check fscanf return when parsing modules list
The lack of result checking of fscanf function, breaks compilation
for default "-Werror=unused-result" flag.
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Bruce Richardson [Fri, 16 Jan 2015 12:24:13 +0000 (12:24 +0000)]
nic_uio: fix thread structure compatibility for future FreeBSD
Replace d_thread_t with struct thread in nic_uio.
Ref: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196691
Quote:
"The d_thread_t typedef is a compat shim to support FreeBSD 4.x.
I'm planning to remove this shim from 11 and dpdk is very unlikely
to ever be ported to 4.x.
If it does it will need far more changes than just d_thread_t"
Reported-by: John Baldwin <jhb@freebsd.org>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 11:07:52 +0000 (11:07 +0000)]
app/testpmd: remove duplicated function for list parsing
There were two static functions called "parse_item_list" in testpmd app.
Since one was a superset of the functionality of the other, we can
collapse the two calls down into a single one, shared between the two
C files.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Declan Doherty [Tue, 16 Dec 2014 12:45:10 +0000 (12:45 +0000)]
bond: fix vlan flag interpretation
This patch contains a fix for link bonding handling of vlan tagged packets in mode 3 and 5.
Currently xmit_slave_hash function misinterprets the PKT_RX_VLAN_PKT flag to mean that
there is a vlan tag within the packet when in actually means that there is a valid entry
in the vlan_tci field in the mbuf.
- Fixed VLAN tag support in hashing functions.
- Adds support for TCP in layer 4 header hashing.
- Splits transmit hashing function into separate functions for each policy to
reduce branching and to make the code clearer.
- Fixed incorrect flag set in test application packet generator.
Test report: http://dpdk.org/ml/archives/dev/2015-January/010792.html
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Tested-by: SunX Jiajia <sunx.jiajia@intel.com>
Michael Qiu [Wed, 10 Dec 2014 11:46:17 +0000 (19:46 +0800)]
vfio: avoid enabling while the module is not loaded
When vfio module is not loaded when kernel support vfio feature,
the routine still try to open the container to get file
description.
This action is not safe, and of course got error messages:
EAL: Detected 40 lcore(s)
EAL: unsupported IOMMU type!
EAL: VFIO support could not be initialized
EAL: Setting up memory...
This may make user confuse, this patch make it reasonable
and much more smooth to user.
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Stephen Hemminger [Tue, 9 Dec 2014 16:35:46 +0000 (08:35 -0800)]
log: remove unnecessary stubs
The read/seek/close stub functions are unnecessary on the
log stream. Per glibc fopencookie man page:
cookie_read_function_t *read
If *read is a null pointer, then reads from the custom stream
always return end of file.
cookie_seek_function_t *seek
If *seek is a null pointer, then it is not possible to perform
seek operations on the stream.
cookie_close_function_t *close
If *close is NULL, then no special action is performed when the
stream is closed.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Vlad Zolotarov [Tue, 23 Dec 2014 17:23:17 +0000 (19:23 +0200)]
mem: search only dpdk hugetlbfs maps
When scanning the hugetlbfs maps search only for the DPDK maps.
This will allow the application create its own hugetlbfs mappings
and use the DPDK facilities on the same hugetlbfs mount point.
Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Pawel Wodkowski [Fri, 9 Jan 2015 15:05:25 +0000 (16:05 +0100)]
ethdev: fix missing parenthesis in mac check
Fix check introduced in commit
4bdefaade6d1 (VMDQ enhancements).
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Ravi Kerur [Sat, 27 Dec 2014 15:30:44 +0000 (10:30 -0500)]
eal: fix check for power of 2 in 0 case
rte_is_power_of_2 returns true for 0 and 0 is not power_of_2.
Fix by checking for n.
Signed-off-by: Ravi Kerur <rkerur@gmail.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Neil Horman [Fri, 2 Jan 2015 19:58:57 +0000 (14:58 -0500)]
mk: fix link to static combined library
When building static archives with CONFIG_COMBINED_LIBS, we still need to
specify --whole-archive to pull in all the proper constructors.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Reported-by: Lyn M <netinal7@gmail.com>
Tested-by: Lyn M <netinal7@gmail.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Thu, 15 Jan 2015 09:55:25 +0000 (10:55 +0100)]
version: 2.0.0-rc0
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Fri, 19 Dec 2014 13:36:18 +0000 (14:36 +0100)]
version: 1.8.0
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Fri, 19 Dec 2014 14:09:51 +0000 (15:09 +0100)]
pkg: remove Intel references
Synchronize naming with changes done in documentation,
e.g. commit
ac8ada0 ("doc: remove Intel references from release notes").
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Thomas Monjalon [Fri, 19 Dec 2014 13:34:40 +0000 (14:34 +0100)]
pkg: support sphinx documentation
Guides have been added in release 1.8.0.
They use sphinx to process rst files.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Thomas Monjalon [Fri, 19 Dec 2014 13:32:04 +0000 (14:32 +0100)]
pkg: fix link to bind tool
The NIC bind tool has been renamed in commit
f0e14c5f66c9c137.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Siobhan Butler [Thu, 18 Dec 2014 15:48:47 +0000 (15:48 +0000)]
doc: updating to 1.8 release note
Added instructions for updating from DPDK 1.7.0 to 1.8.0
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Sergio Gonzalez Monroy [Mon, 15 Dec 2014 10:32:43 +0000 (10:32 +0000)]
doc: add known issue for iommu and igb_uio
Known issue regarding iommu/VT-d and igb_uio in Linux kernel version 3.15
to 3.17 where unbinding the device from the driver removes the 1:1 mapping
in the iommu resulting in IOMMU/DMAR errors when the device tries to
access memory.
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:32 +0000 (16:47 +0000)]
doc: move resolved issues
Removed resolved issues from known issues section.
Added new resolved issues to resolved issues section.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Thu, 18 Dec 2014 15:48:46 +0000 (15:48 +0000)]
doc: add i40e vxlan support to release notes
Added to New and Supported features for VXLAN feature.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Thu, 18 Dec 2014 15:01:35 +0000 (15:01 +0000)]
doc: add udp tunnel flag for checksum offload
Added to configuration instructions for UDP packet tunneling.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:31 +0000 (16:47 +0000)]
doc: add new features to release notes
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:30 +0000 (16:47 +0000)]
doc: move new features to supported features for 1.8 release
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:37 +0000 (16:47 +0000)]
doc: update list of sample apps in release notes
Added new and existing names of sample apps to list of
sample apps in release notes.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Bernard Iremonger [Thu, 18 Dec 2014 21:11:17 +0000 (21:11 +0000)]
doc: fix typos
Fix some typos in i40e and poll_mode_drv sections of the programmers guide.
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Reshma Pattan [Wed, 17 Dec 2014 13:11:14 +0000 (13:11 +0000)]
doc: fix setup menu options in linux guide
fixed setup menu options in linux gsg to
keep in synch with setup.sh
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Fri, 19 Dec 2014 15:08:46 +0000 (15:08 +0000)]
doc: update i40e tuning in linux guide
Updated the i40e Enabling Additional Functionality
section (5.7) of DPDK Getting Started Guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Bruce Richardson [Tue, 2 Dec 2014 16:17:58 +0000 (16:17 +0000)]
doc: update mbuf section of programmers guide
In Release 1.8, the mbuf structure was significantly reworked to add
extra information, leading to the structure being split across two
cache lines, and the data pointer being replaced by an offset. The
description of the library in the programmer's guide document needs
to be updated to take account of these changes.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Chao Zhu [Sat, 13 Dec 2014 03:06:10 +0000 (11:06 +0800)]
doc: add IBM Power description to linux guide
This patch added IBM ppc_64 descriptions, including architecture
support, compiling requirements on Linux.
Signed-off-by: Chao Zhu <chaozhu@linux.vnet.ibm.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Thu, 18 Dec 2014 16:34:49 +0000 (16:34 +0000)]
doc: add bsd license to distributor svgs
Added copyright to distributor sample app svg files.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:34 +0000 (16:47 +0000)]
doc: remove licensing overview from release notes
Removing Appendix A from Release Notes as Intel Licensing information is
no longer relevant in this document.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:34 +0000 (16:47 +0000)]
doc: remove Intel legal info from release notes
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Thu, 18 Dec 2014 16:04:27 +0000 (16:04 +0000)]
doc: remove Intel legal info from sample apps guide
Removed Legal blurb from sample applications guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:58:39 +0000 (16:58 +0000)]
doc: remove Intel legal info from testpmd guide
Removed Intel Legal blurb from TestPMD User Guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Fri, 19 Dec 2014 14:30:43 +0000 (14:30 +0000)]
doc: remove Intel legal info from prog guide
Removed redundant Intel legal info from programmers guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Tue, 16 Dec 2014 10:56:37 +0000 (10:56 +0000)]
doc: remove Intel legal info from freebsd guide
Removed redundant legal blurb from FreeBSD GSG
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Pablo de Lara [Fri, 19 Dec 2014 15:08:48 +0000 (15:08 +0000)]
doc: remove Intel legal info from linux guide
Removed redundant Intel legal info from linux gsg.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:47:35 +0000 (16:47 +0000)]
doc: remove Intel references from release notes
Removed multiple references to Intel(R) DPDK where no longer
relevant.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Thu, 18 Dec 2014 10:51:19 +0000 (10:51 +0000)]
doc: remove Intel references from sample apps guide
Removed redundant references to Intel(R) DPDK in Sample App UG.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Wed, 17 Dec 2014 16:58:38 +0000 (16:58 +0000)]
doc: remove Intel references from testpmd guide
Removed redundant Intel references from TestPMD User Guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Fri, 19 Dec 2014 14:30:42 +0000 (14:30 +0000)]
doc: remove Intel references from prog guide
Removed redundant references to Intel(R) DPDK in Programmers Guide.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Tue, 16 Dec 2014 10:49:56 +0000 (10:49 +0000)]
doc: remove Intel references from freebsd guide
Updated the FreeBSD GSG to remove redundant Intel references.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Siobhan Butler [Fri, 19 Dec 2014 15:08:47 +0000 (15:08 +0000)]
doc: remove Intel references from linux guide
Removed references to Intel which
are no longer relevant in linux gsg.
Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Balazs Nemeth [Thu, 18 Dec 2014 17:56:36 +0000 (17:56 +0000)]
ixgbevf: fix link state
This patch fixes checking the link state of a virtual function. If the
state has already been checked, it does not need to be checked
again. Previously, get_link_status in the ixgbe_hw struct was used to
track if the information had already been retrieved, but this field
was always set to false (signifying that the information was
up-to-date). The problem was introduced by commit
8ef32003 which was
part of a patch set to update the ixgbe portion of the PMD. This patch
does not break consistency with the ixgbevf driver. Instead, it fixes
the problem at the level of DPDK.
Applications that rely on the reported link speed could fail without
this patch. The qos_sched example application provided with DPDK did
not run when virtual functions were used. The output for this example
application is shown below:
EAL: Error - exiting with code: 1
Cause: Unable to config sched subport 0, err=-2
The problem and the effect of the patch can been seen by running the
l2fwd example application using the following command:
sudo ./build/l2fwd -c 0x3 -n 4 -- -p 0x3 -T 0
Before the patch has been applied (with both links up):
...
Checking link statusdone
Port 0 Link Up - speed 100 Mbps - half-duplex
Port 1 Link Up - speed 100 Mbps - half-duplex
L2FWD: entering main loop on lcore 1
...
After the patch has been applied (with both links up):
...
Checking link statusdone
Port 0 Link Up - speed 10000 Mbps - full-duplex
Port 1 Link Up - speed 10000 Mbps - full-duplex
L2FWD: entering main loop on lcore 1
...
Before the patch has been applied (with link 0 down, link 1 up):
...
Checking link statusdone
Port 0 Link Up - speed 100 Mbps - half-duplex
Port 1 Link Up - speed 100 Mbps - half-duplex
L2FWD: entering main loop on lcore 1
...
After the patch has been applied (with link 0 down, link 1 up):
...
Checking link status............................................................
..............................done
Port 0 Link Down
Port 1 Link Up - speed 10000 Mbps - full-duplex
...
Signed-off-by: Balazs Nemeth <balazs.nemeth@intel.com>
Acked-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Michael Qiu [Thu, 18 Dec 2014 10:16:49 +0000 (18:16 +0800)]
ixgbe: fix secondary process start
EAL: probe driver: 8086:10fb rte_ixgbe_pmd
EAL: PCI memory mapped at 0x7f18c2a00000
EAL: PCI memory mapped at 0x7f18c2a80000
Segmentation fault (core dumped)
This is introduced by commit:
46bc9d75
ixgbe: fix multi-process support
When start primary process with command line:
./app/test/test -n 1 -c ffff -m 64
then start the second one:
./app/test/test -n 1 --proc-type=secondary --file-prefix=rte
This segment-fault will occur.
Root cause is test app on primary process only starts device, but
the queue need initialized by manually command line.
So the tx queue is still NULL when secondary process startup.
Reported-by: Yong Liu <yong.liu@intel.com>
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Sujith Sankar [Thu, 18 Dec 2014 09:09:40 +0000 (14:39 +0530)]
enic: use eal to manage interrupts
This patch removes the interrupt registration code which was under the flag
VFIO_PRESENT and relies on the rte_lib code for the same.
This also ignores the initial trigger of ISR from the lib.
Signed-off-by: Sujith Sankar <ssujith@cisco.com>
Daniel Mrzyglod [Fri, 19 Dec 2014 15:01:36 +0000 (16:01 +0100)]
af_packet: fix possible memory leak
In rte_pmd_init_internals, we are mapping memory but not released
if error occurs it could produce memory leak.
Add unmmap function to release memory.
Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>
Acked-by: John W. Linville <linville@tuxdriver.com>
Daniel Mrzyglod [Thu, 18 Dec 2014 09:45:05 +0000 (09:45 +0000)]
af_packet: fix memory allocation checks
In rte_eth_af_packet.c we are we are missing NULL pointer
checks after calls to allocate memory for queues.
Add checking NULL pointer and error handling.
Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Neil Horman [Thu, 18 Dec 2014 11:31:56 +0000 (06:31 -0500)]
xenvirt: fix build break on ethernet address parsing
Back in commit
aaa662e75c23c61 ("cmdline: fix overflow on bsd"),
the author failed to fixup a call to cmdline_parse_etheraddr in xenvirt.
This patch makes the needed correction to avoid a build break.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Ciara Loftus [Thu, 18 Dec 2014 18:07:07 +0000 (18:07 +0000)]
vhost: add interface name for virtio
This patch fixes the issue whereby when using userspace vhost ports
in the context of vSwitching, the name provided to the hypervisor/QEMU
of the vhost tap device needs to be exposed in the library, in order
for the vSwitch to be able to direct packets to the correct device.
This patch introduces an 'ifname' member to the virtio-net structure
which is populated with the tap device name when QEMU is brought up
with a vhost device.
Signed-off-by: Ciara Loftus <ciara.loftus@intel.com>
Signed-off-by: Anthony Fee <anthonyx.fee@intel.com>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Jincheng Miao [Thu, 18 Dec 2014 06:50:29 +0000 (14:50 +0800)]
kni: fix build on CentOS 6.6
From CentOS 6.6, function skb_set_hash is introduced, this breaks
the previous assumption. So modify RHEL_RELEASE_VERSION from 7.0
to 6.6 to fix build for rte_kni.ko.
Related mail from Barak Enat:
http://dpdk.org/ml/archives/dev/2014-December/010124.html
building error likes:
CC [M] lib/librte_eal/linuxapp/kni/e1000_82575.o
In file included from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:41,
from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31,
from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31,
from lib/librte_eal/linuxapp/kni/e1000_82575.c:38:
lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h:3870: error: conflicting types for ‘skb_set_hash’
include/linux/skbuff.h:620: note: previous definition of ‘skb_set_hash’ was here
Reported-by: Barak Enat <barak@saguna.net>
Signed-off-by: Jincheng Miao <jincheng.miao@gmail.com>
Thomas Monjalon [Wed, 17 Dec 2014 23:33:19 +0000 (00:33 +0100)]
version: 1.8.0-rc6
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Ouyang Changchun [Fri, 12 Dec 2014 04:15:26 +0000 (12:15 +0800)]
examples/vhost: fix vlan offload
The following commit break vm2vm hard mode test cases:
commit
db4014f2b65cb31bf ("use factorized default Rx/Tx configuration")
Investigation show that it needs enabling vlan offload since it is turn off
by default in some drivers, and Tx need it, especially when vm2vm is in hard mode.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Tested-by: Jingguo Fu <jingguox.fu@intel.com>
Olivier Matz [Wed, 17 Dec 2014 12:55:25 +0000 (13:55 +0100)]
examples/vm_power: fix initialization of cmdline token
Fix a typo: cmdline_parse_token_string_t was used in place of
cmdline_parse_num_string_t.
Seen with clang-3.5.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Olivier Matz [Wed, 17 Dec 2014 12:55:24 +0000 (13:55 +0100)]
examples/vm_power: fix split of compiler and linker options
The argument -lvirt is a linker parameter, not a CFLAG.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Olivier Matz [Wed, 17 Dec 2014 12:55:23 +0000 (13:55 +0100)]
examples/netmap_compat: fix overflow in ioctl operation
Compiling the netmap example with clang-3.5 triggered the following
warning:
compat_netmap.c:783:11: error: overflow converting case value to
switch condition type (
3225184658 to
18446744072639768978)
[-Werror,-Wswitch]
case NIOCREGIF:
^
Indeed, an ioctl value should be an unsigned 32 bits, not an int.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Olivier Matz [Wed, 17 Dec 2014 12:55:22 +0000 (13:55 +0100)]
examples/l3fwd: fix compilation with clang 3.5
Fix the following error:
error: unused function 'l3fwd_simple_forward'
The l3fwd_simple_forward() is maybe unused, due to compilation options
(APP_LOOKUP_METHOD, ENABLE_MULTI_BUFFER_OPTIMIZE). As the combinatorial
is quite big, it looks simpler to add the __attribute__((unused)) on
this function, so that the compiler does not complain.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Olivier Matz [Wed, 17 Dec 2014 12:55:21 +0000 (13:55 +0100)]
app/test: fix misplaced braces in strncmp
One occurrence call to strncmp had the closing brace in the wrong
place. Changing this form:
if (strncmp(X, Y, sizeof(X) != 0))
which does a comparison of length 1, to
if (strncmp(X, Y, sizeof(X)) != 0)
which does the correct length comparison and then compares the result
to zero in the "if" part.
Seen with clang-3.5:
"error: size argument in 'strncmp' call is a comparison"
This patch is similar to
261386248 but it looks that one occurrence
was forgotten.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Bruce Richardson [Wed, 17 Dec 2014 17:06:53 +0000 (17:06 +0000)]
app/test: fix assert macro
One of the test assertion macros was missing the "do" part of the
do-while. This issue was picked up by clang reporting an empty while
loop body for the closing while of the do-while pair.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Declan Doherty [Wed, 17 Dec 2014 11:46:59 +0000 (11:46 +0000)]
bond: check null before use
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Declan Doherty [Wed, 17 Dec 2014 11:46:58 +0000 (11:46 +0000)]
bond: fix pci table allocation check
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Declan Doherty [Wed, 17 Dec 2014 11:46:57 +0000 (11:46 +0000)]
bond: check bounds before assigning active slave count
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Helin Zhang [Wed, 17 Dec 2014 05:40:59 +0000 (13:40 +0800)]
i40e: fix build with some toolchains
Compile warning which is treated as error occurs on Oracle Linux
(kernel 2.6.39, gcc 4.4.7) as below, or RHEL, CentOS. Aliasing
'struct i40e_aqc_debug_reg_read_write' should be avoided. Use the
elements inside that structure directly can fix the issue.
lib/librte_pmd_i40e/i40e_ethdev.c: In function 'eth_i40e_dev_init':
lib/librte_pmd_i40e/i40e_ethdev.c:5318: error: dereferencing pointer
'cmd' does break strict-aliasing rules
lib/librte_pmd_i40e/i40e_ethdev.c:5314: note: initialized from here
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Jincheng Miao [Thu, 11 Dec 2014 05:27:07 +0000 (13:27 +0800)]
kni: fix build with kernel < 2.6.35 and vhost debug enabled
Seen on RHEL-6.5:
lib/librte_eal/linuxapp/kni/kni_vhost.c:222:
error: ‘struct socket’ has no member named ‘wq’
lib/librte_eal/linuxapp/kni/kni_vhost.c:313:
error: implicit declaration of function ‘sk_sleep’
lib/librte_eal/linuxapp/kni/kni_vhost.c:313:
error: passing argument 1 of ‘__wake_up’ makes pointer from integer without a cast
include/linux/wait.h:146: note: expected ‘struct wait_queue_head_t *’
but argument is of type ‘int’
lib/librte_eal/linuxapp/kni/kni_vhost.c:580:
error: assignment makes pointer from integer without a cast
RHEL6.5 kernel is based on 2.6.32. But there are two changing
from 2.6.35:
1. socket struct is changed
It wrappered previous wait_queue_head_t of socket to
struct socket_wq. So for the kernel older than 2.6.35, we should
directly use socket->wait instead.
2. new function sk_sleep()
This function is implemented from 2.6.35 to obtain wait queue
from struct sock. This patch adds a macro in kni/compat.h
to be compatible with older kernels.
Patch is tested in RHEL6.5 and RHEL7.0 with:
CONFIG_RTE_LIBRTE_KNI=y
CONFIG_RTE_KNI_KO_DEBUG=y
CONFIG_RTE_KNI_VHOST=y
CONFIG_RTE_KNI_VHOST_MAX_CACHE_SIZE=1024
CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=y
CONFIG_RTE_KNI_VHOST_DEBUG_RX=y
CONFIG_RTE_KNI_VHOST_DEBUG_TX=y
Signed-off-by: Jincheng Miao <jmiao@redhat.com>
Stephen Hemminger [Wed, 17 Dec 2014 05:47:17 +0000 (21:47 -0800)]
ethdev: fix mtu comment
In commit
59d0ecdbf0e1d6350 ("MTU accessors"),
max_frame_size was replaced with mtu.
Default size is ETHER_MTU = 1500.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Wed, 17 Dec 2014 17:07:17 +0000 (18:07 +0100)]
mk: fix link with CC
It appeared in commit
21cdc2e77a4ca999 ("fix 32-bit link with gcc")
that linker options must be prefixed by -Wl, when using CC.
So CPU_LDFLAGS is prefixed in rte.lib.mk.
Then commit
815cfb7925bb6de ("fix link of combined shared library using CC")
introduced another prefixing of CPU_LDFLAGS in rte.sharelib.mk,
included in lib/Makefile.
Because CPU_LDFLAGS is an exported variable, the prefixing is done twice.
Initial patch of commit
815cfb7925bb6de had a workaround but it hasn't
been applied in favor of this proper fix.
Now variables are not overriden when prefixing.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Wed, 17 Dec 2014 17:24:52 +0000 (18:24 +0100)]
mk: forbid multiple definitions
The option "-z muldefs" was set only if not using ld directly.
By the way, this option seems to be a useless hack introduced
with shared and combined libraries support (
e25e4d7ef16b8aa84de).
The clean approach is to remove it.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Wed, 17 Dec 2014 18:38:21 +0000 (19:38 +0100)]
mk: fix link examples to combined library
RTE_LIBNAME was defined only if BUILDING_RTE_SDK.
So external applications like examples were trying to link with -l
without any library name.
This bug appeared after fixing link to combined library (removing
link to separate libraries).
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Yong Liu [Wed, 17 Dec 2014 09:20:44 +0000 (17:20 +0800)]
mk: fix link to not combined libraries
Commit
944088c2abbe ("fix link to combined library") introduced
a check with a wrong configuration option name.
So link is broken in the case combined library is not enabled.
main.o: In function `rte_pktmbuf_free':
main.c:(.text+0x9c): undefined reference to `per_lcore__lcore_id'
Signed-off-by: Yong Liu <yong.liu@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
[Thomas: fix option name in comments]
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Tue, 16 Dec 2014 23:31:34 +0000 (00:31 +0100)]
version: 1.8.0-rc5
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Fri, 31 Oct 2014 21:05:34 +0000 (22:05 +0100)]
doc: precise title for linux guide
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Pablo de Lara [Tue, 9 Dec 2014 12:27:32 +0000 (12:27 +0000)]
doc: fix typos in ring lib
Ring library section in PG had a couple of typos,
in the text and in one of the images
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Pablo de Lara [Tue, 9 Dec 2014 12:02:08 +0000 (12:02 +0000)]
doc: add vm power mgmt app
Added new section in sample app UG for
the new VM power management app.
Signed-off-by: Alan Carew <alan.carew@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Pablo de Lara [Tue, 9 Dec 2014 12:02:07 +0000 (12:02 +0000)]
doc: add vm power mgmt request sequence svg
Added second of the two figures in the VM power management app UG
VM power management request sequence
Signed-off-by: Alan Carew <alan.carew@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Pablo de Lara [Tue, 9 Dec 2014 12:02:06 +0000 (12:02 +0000)]
doc: add vm power mgmt overview svg
Added first of the two figures in the VM power management app UG:
VM power mangament highlevel overview
Signed-off-by: Alan Carew <alan.carew@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Bernard Iremonger [Mon, 8 Dec 2014 17:18:43 +0000 (17:18 +0000)]
doc: add bsd license to exception path svg
The bsd license was missing from the exception path svg file.
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Declan Doherty [Mon, 8 Dec 2014 11:21:35 +0000 (11:21 +0000)]
doc: add bsd license to link bonding svgs
The bsd license was missing from the link bonding svg files.
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Reshma Pattan [Fri, 5 Dec 2014 16:08:19 +0000 (16:08 +0000)]
doc: fix typos in distributor application
corrected couple of typos in distributor application
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 15:03:52 +0000 (15:03 +0000)]
examples/vm_power: fix check for null
The check for NULL is in the wrong position in the "if" error leg. The
pointer should be checked for NULL before checking what the value of
what the pointer points to is.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 15:03:51 +0000 (15:03 +0000)]
examples/vm_power: fix max length of unix socket path
The length of the path to a unix socket is not PATH_MAX but instead is
UNIX_PATH_MAX which is generally just over 100 bytes in size. It's not
actually defined in sys/un.h on linux - despite the man page referencing
it, so calculate the size in the case where it's not defined.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Fri, 12 Dec 2014 12:24:04 +0000 (12:24 +0000)]
examples/ip_pipeline: fix memory allocation check
Static analysis shows that once instance of rte_zmalloc is missing
a return value check in the code. This is fixed by adding a return
value check. The malloc call itself is moved to earlier in the function
so that no work is done unless all memory allocation requests have
succeeded - thereby removing the need for rollback on error.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Konstantin Ananyev [Tue, 16 Dec 2014 17:05:08 +0000 (17:05 +0000)]
examples/l3fwd-acl: fix possible memory leak
At error app_acl_init() can return without freeing dynamically allocated memory.
Not really a big problem, as if app_acl_init() fails,
then application would terminate immediately anyway.
Though it is a good coding practise to make a function to cleanup after itself.
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 15:03:50 +0000 (15:03 +0000)]
app/test: check for mbuf allocation failure
If mbuf allocation failed for whatever reason, we would get a NULL
pointer exception in test_table_acl.c:test_pipeline_single_filter test
case.
We fix this by causing an early break out of the application loop. If we
quit the test immediately we would leak any existing allocated mbufs,
but by breaking instead, we allow the test to continue and clean up the
mbufs already in the pipeline, while still having a test failure as the
mbuf counts should not match.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 15:03:49 +0000 (15:03 +0000)]
app/test: fix crash after null check
In the kvargs test cases, we were checking for errors by checking if the
returned pointer value was NULL. In the error handling, we then tried to
free back the NULL pointer, which would cause a crash.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Pablo de Lara [Thu, 11 Dec 2014 13:50:35 +0000 (13:50 +0000)]
app/test: fix multi-process when device is bound to uio
Since commit
a155d4301 "support link bonding device initialization",
EAL probes drivers to the PCI devices in rte_eal_init,
then PCI resources are mapped if a device
is bound to igb_uio driver, for instance.
Therefore, test app probes all the devices and multiprocess unit test
tries to map resources twice in the secondary processes, and test fails,
caused by RTE_PCI_DRV_NEEDED_MAPPING flag in dummy pci driver my_driver2.
Test is fixed by setting the driver flags to 0.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 14:39:44 +0000 (14:39 +0000)]
app/testpmd: limit port mask bits to configured maximum
The port mask parsing in testpmd allowed up to 64 bits to be processed,
even if RTE_MAX_ETHPORTS is set to a max of 32. Fix this by only
processing up to min(RTE_MAX_ETHPORTS,64) bits of the mask.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Bruce Richardson [Tue, 16 Dec 2014 16:30:22 +0000 (16:30 +0000)]
af_packet: fix crash on initialization failure
The cleanup code on error checks for *internals being NULL only after
using the pointer to perform other cleanup. Fix this by moving the
clean-up based on the pointer inside the check for NULL.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Pablo de Lara [Thu, 11 Dec 2014 21:18:40 +0000 (21:18 +0000)]
vmxnet3: fix default Tx configuration
Since commit
fbde27f19ab8f "get default Rx/Tx configuration from dev info",
a default RX/TX configuration can be used for all PMDs.
In case of vmxnet3, the whole structure was zeroed and not filled out.
The PMD does not support multi segments or offload functions,
so txq_flags should have those flags set.
Test report: http://dpdk.org/ml/archives/dev/2014-December/009933.html
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Tested-by: Xiaonan Zhang <xiaonanx.zhang@intel.com>
Helin Zhang [Tue, 16 Dec 2014 08:23:20 +0000 (16:23 +0800)]
i40e: workaround for X710 performance
On X710, performance number is far from the expectation on recent
firmware versions. The fix for this issue may not be integrated in
the following firmware version. So the workaround in software driver
is needed. It needs to modify the initial values of 3 internal only
registers. Note that the workaround can be removed when it is fixed
in firmware in the future.
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Jing Chen <jing.d.chen@intel.com>
Stephen Hemminger [Tue, 9 Dec 2014 16:37:24 +0000 (08:37 -0800)]
ixgbe: support X540 VF
Add missing setup for X540 MAC type when setting up VF.
Additional check exists in Linux driver but not in DPDK.
Signed-off-by: Bill Hong <bhong@brocade.com>
Signed-off-by: Stephen Hemminger <shemming@brocade.com>
Bruce Richardson [Fri, 5 Dec 2014 13:46:22 +0000 (13:46 +0000)]
ixgbe: fix multi-process support
When using multiple processes, the TX function used in all processes
should be the same, otherwise the secondary processes cannot transmit
more than tx-ring-size - 1 packets.
To achieve this, we extract out the code to select the ixgbe TX function
to be used into a separate function inside the ixgbe driver, and call
that from a secondary process when it is attaching to an
already-configured NIC.
Testing with symmetric MP app shows that we are able to RX and TX from
both primary and secondary processes once this patch is applied.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Reshma Pattan <reshma.pattan@intel.com>
Bruce Richardson [Tue, 16 Dec 2014 16:30:23 +0000 (16:30 +0000)]
ixgbe: fix array overflow in vector Rx
Switch the order of the conditions in a while loop, so we check the
range of "i" against the max, before using it to index into the array.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Shu Shen [Thu, 11 Dec 2014 19:33:23 +0000 (11:33 -0800)]
igb_uio: fix build with kernel 3.18
This patch fixes build failing with undefined symbol _PAGE_IOMAP with
kernel 3.18.
The Xen-specific _PAGE_IOMAP PTE flag was removed in kernel 3.18 and
could be used for other purpose in future. This patch ensures that
_PAGE_IOMAP flag is only used for kernels before 3.18.
Signed-off-by: Shu Shen <shu.shen@radisys.com>
Acked-by: Jincheng Miao <jmiao@redhat.com>
Pablo de Lara [Mon, 15 Dec 2014 13:41:46 +0000 (13:41 +0000)]
ring: fix return type in enqueue and dequeue burst functions
Enqueue and dequeue burst functions always return a positive
value (including 0), so return type should be unsigned,
instead of int.
Fixed also API doc for one of the functions.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>