Jiayu Hu [Fri, 4 Aug 2017 09:59:16 +0000 (17:59 +0800)]
doc: add GRO guide
Add prog_guide doc to explain the design of the GRO library.
Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahed Shaikh [Mon, 24 Jul 2017 10:19:06 +0000 (03:19 -0700)]
doc: list NPAR as supported feature in qede
Existing qede PMD code already supports NPAR feature.
So adding this in "Supported Features" section after testing it with
latest DPDK.
Also, add myself to the list of maintainers of qede PMD
Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Rasesh Mody <rasesh.mody@cavium.com>
Keith Wiles [Fri, 7 Jul 2017 00:36:35 +0000 (19:36 -0500)]
mem: minor fix spelling and format
Signed-off-by: Keith Wiles <keith.wiles@intel.com>
Bruce Richardson [Fri, 4 Aug 2017 12:44:11 +0000 (13:44 +0100)]
doc: update FAQ with new testpmd default burst size
Fixes:
836853d3d4cf ("app/testpmd: increase default burst size to 32")
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Bruce Richardson [Fri, 4 Aug 2017 12:44:10 +0000 (13:44 +0100)]
doc: remove unneeded TLB from FAQ question 2
Hugepages are just that, hugepages. The TLB is a sort of cache for doing
address translation and does not need to be referenced in the title, since
"TLB hugepages" doesn't make any sense (as there are no non-TLB hugepages
that you can allocate).
Fixes:
6e718ae062d0 ("doc: release notes 1.7")
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Bruce Richardson [Fri, 4 Aug 2017 12:44:09 +0000 (13:44 +0100)]
doc: clarify restrictions to run as non-root
Since modern kernels don't allow unprivileged processes to read the
pagemaps file, the instructions on running as non-root are out-of-date. Add
a note clarifying that they will only work with earlier kernel versions.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Jerin Jacob [Fri, 4 Aug 2017 03:27:06 +0000 (08:57 +0530)]
doc: fix typo in KNI guide
Fixes:
fc1f2750a3ec ("doc: programmers guide")
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Ferruh Yigit [Fri, 4 Aug 2017 13:06:13 +0000 (14:06 +0100)]
doc: document NIC features
Document NIC features, add more information about them and add more
implementation related support.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Gabriel Carrillo [Fri, 7 Jul 2017 17:09:59 +0000 (12:09 -0500)]
doc: add tags and cscope make targets to quick help
Update the "make help" output to reflect the additions
of make targets for tags database generation.
Fixes:
aafaea3d3b70 ("devtools: add tags and cscope index generation")
Signed-off-by: Gabriel Carrillo <erik.g.carrillo@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
David Hunt [Fri, 4 Aug 2017 14:07:34 +0000 (15:07 +0100)]
maintainers: volunteer to take power management
Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
David Hunt [Fri, 4 Aug 2017 10:39:02 +0000 (11:39 +0100)]
mk: add sensible default target with defconfig
Users can now use 'make defconfig' to generate a configuration using
the most appropriate defaults for the current machine.
<arch-machine-execenv-toolchain>
arch taken from uname -m
machine defaults to native
execenv is taken from uname, Linux=linuxapp, otherwise bsdapp
toolchain is taken from $CC -v to see which compiler to use
Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Tested-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Harry van Haaren [Fri, 4 Aug 2017 15:49:10 +0000 (16:49 +0100)]
examples/eventdev: fix run forever with -n option
During the refactoring of the sample app to be more generic, the
option to set -n0 and process a huge number of packets was lost.
This commit re-adds -n0, and will process INT64_MAX number of packets.
Fixes:
adb5d5486c39 ("examples/eventdev_pipeline_sw_pmd: add sample app")
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Qi Zhang [Fri, 4 Aug 2017 07:52:06 +0000 (15:52 +0800)]
examples/l3fwd: fix IPv6 packet type parse
Fix a typo that cause IPv6 packet type not be parsed.
Fixes:
71a7e2424e07 ("examples/l3fwd: fix using packet type blindly")
Cc: stable@dpdk.org
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Xiaoyun Li [Fri, 4 Aug 2017 15:50:06 +0000 (23:50 +0800)]
net/i40e: revert fix of PF notify when VF not up
This reverts commit
035a8cf88f010c82de3040c895c801ce0849b065.
Don't send messages to inactive VF will cause DPDK PF failing
to send messages to kernel VF.
With this revert, this issue will be solved.
Fixes:
035a8cf88f01 ("net/i40e: fix PF notify when VF is not up")
Cc: stable@dpdk.org
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Beilei Xing <beilei.xing@intel.com>
Qi Zhang [Wed, 2 Aug 2017 21:38:09 +0000 (05:38 +0800)]
net/ixgbe: fix mask flag on flow rule creation
After fail to create a flow and if this is the first flow, the
mask_added flag should be reset, or it will prevent a new flow
which require different mask be created, since the mask config
remains impact.
Fixes:
72c135a89f8 ("net/ixgbe: create consistent filter")
Cc: stable@dpdk.org
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Thomas Monjalon [Fri, 4 Aug 2017 09:55:41 +0000 (11:55 +0200)]
gro: fix missing includes
The GRO header file depends on stdint and mbuf.
Spotted with devtools/check-includes.sh
Fixes:
e996506a1c07 ("lib/gro: add Generic Receive Offload API framework")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Fri, 4 Aug 2017 10:00:53 +0000 (12:00 +0200)]
eventdev: fix missing includes
The PCI helper file depends on some EAL definitions.
Spotted with devtools/check-includes.sh:
error: implicit declaration of function ‘rte_eal_process_type’
error: ‘RTE_PROC_PRIMARY’ undeclared
error: implicit declaration of function ‘rte_socket_id’
There was also this error because the inline keyword was missing:
error: ‘rte_event_pmd_pci_probe’ defined but not used
Fixes:
9a8269d56942 ("eventdev: make PCI probe and remove functions optional")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Adrien Mazarguil [Fri, 4 Aug 2017 11:56:22 +0000 (13:56 +0200)]
cryptodev: fix C11 extensions in exported header
Fix issues reported by check-includes.sh:
rte_crypto_sym.h:586:3: error: anonymous structs are a C11 extension
[-Werror,-Wc11-extensions]
rte_crypto_sym.h:510:2: error: anonymous unions are a C11 extension
[-Werror,-Wc11-extensions]
Fixes:
b59502a5e3d0 ("cryptodev: add AEAD parameters in crypto operation")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Adrien Mazarguil [Fri, 4 Aug 2017 11:56:21 +0000 (13:56 +0200)]
ethdev: fix C11 extensions in exported TM header
Fix issues reported by check-includes.sh:
rte_tm.h:473:2: error: anonymous unions are a C11 extension
[-Werror,-Wc11-extensions]
rte_tm.h:696:2: error: anonymous unions are a C11 extension
[-Werror,-Wc11-extensions]
rte_tm.h:904:2: error: anonymous unions are a C11 extension
[-Werror,-Wc11-extensions]
Fixes:
5d109deffa87 ("ethdev: add traffic management API")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Gaetan Rivet [Fri, 4 Aug 2017 15:30:23 +0000 (17:30 +0200)]
eal: fix hotplug device parsing
snprintf returns the length it would have written had the given length
been enough, *terminating null byte excluded*.
It will however limit the length of its writing to given length minus
one, and always put a terminating null-byte at the end of the string.
This must be taken into account when calculating the total length of the
device declaration string.
Fixes:
3054036f054a ("eal: fix possible crash in hotplug")
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Thomas Monjalon [Thu, 3 Aug 2017 23:42:04 +0000 (01:42 +0200)]
version: 17.08-rc4
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Jianfeng Tan [Wed, 2 Aug 2017 17:34:11 +0000 (17:34 +0000)]
doc: remove unnecessary deprecation notice
The original purpose of this deprecation is to make sure PCI devices
are reset whenever DPDK apps crash.
Since the commit
b58eedfc7dd5 from Shijith can fix this problem without
deprecating anything, now there is no need to deprecate iomem and ioport
mapping in igb_uio.
Fixes:
3bac1dbc1ed5 ("doc: announce iomem and ioport removal from igb_uio")
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Sun, 16 Jul 2017 17:47:07 +0000 (19:47 +0200)]
maintainers: add event ring test to eventdev
This file was not referenced in MAINTAINERS list.
The miss is spotted with devtools/check-maintainers.sh.
As this test file is related to eventdev, they should both
have the same maintainer.
Fixes:
1ee55d7a6e4d ("test/eventdev: add auto-tests for event ring functions")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Thomas Monjalon [Sun, 16 Jul 2017 18:10:56 +0000 (20:10 +0200)]
doc: move metrics libs to device API section
The metrics headers were listed in misc section,
whereas they belong to the device API family.
Fixes:
349950ddb9c5 ("metrics: add information metrics library")
Fixes:
2ad7ba9a6567 ("bitrate: add bitrate statistics library")
Fixes:
5cd3cac9ed22 ("latency: added new library for latency stats")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Sun, 16 Jul 2017 17:57:07 +0000 (19:57 +0200)]
doc: move keepalive to multicore API section
The keepalive header was listed in misc section,
despite its doxygen comment is "LCore Keepalive Monitor".
Fixes:
75583b0d1efd ("eal: add keep alive monitoring")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Thu, 3 Aug 2017 14:50:55 +0000 (16:50 +0200)]
doc: remove outdated list of supported OS
It is very difficult to list OS which are really supported.
Instead of continuing this unrealistic effort, a more reliable list
of tested platforms and OS is updated in the release notes.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Yulong Pei [Mon, 31 Jul 2017 04:30:29 +0000 (12:30 +0800)]
doc: add tested Intel platforms with Intel NICs
Add tested Intel platforms with Intel NICs to the release note.
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Thu, 3 Aug 2017 17:19:45 +0000 (18:19 +0100)]
doc: warn about UIO not working with UEFI secure boot
Added notes to the documentation warning that if UEFI secure boot
is enabled the Linux kernel may disallow the use of UIO on the
system, and a suggested workaround of using the vfio-pci kernel
module instead of igb_uio or uio_pci_generic.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Reshma Pattan [Thu, 3 Aug 2017 13:09:40 +0000 (14:09 +0100)]
doc: add how-to on packet capture framework
Add How-To doc to describe the use of the pdump library
and the dpdk-pdump tool to capture traffic on DPDK
ports.
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Jasvinder Singh [Tue, 25 Jul 2017 17:40:51 +0000 (18:40 +0100)]
doc: describe traffic management API
This patch adds description of the traffic management api to dpdk
programmers guide.
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Pablo de Lara [Thu, 3 Aug 2017 10:34:29 +0000 (11:34 +0100)]
test/crypto: fix error message
Fixes:
7a364faef185 ("cryptodev: remove crypto device type enumeration")
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Pablo de Lara [Tue, 1 Aug 2017 00:33:36 +0000 (01:33 +0100)]
app/crypto-perf: fix IV allocation for AEAD
Memory is reserved after each crypto operation
for the necessary IV(s), which could be for cipher,
authentication or AEAD algorithms.
However, for AEAD algorithms (such as AES-GCM), this
memory was not being reserved, leading to potential
memory overflow.
Fixes:
8a5b494a7f99 ("app/test-crypto-perf: add AEAD parameters")
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
David Hunt [Tue, 25 Jul 2017 10:27:52 +0000 (11:27 +0100)]
app/testpmd: fix Tx first with LSC interrupt
The lsc_interrupt flag is enabled by default, and when the --tx-first is
used as a command line parameter, the 32 packets can be sent out before
the link state is up, resulting in the loss of the packets, and no further
forwarding will take place.
E.g. ./build/app/testpmd -c f0 -- --tx-first --stats-period 1
When the --tx-first is used, the lsc_interrupt flag needs to be disabled,
ensuring the links are up before forwarding traffic. Therefore, during the
parameter checking at startup, if --tx-first is used, we now warn the user,
and set lsc_interrupt to 0.
Fixes:
99cabef08855 ("app/testpmd: add parameter to start forwarding Tx first")
Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Jiayu Hu [Thu, 3 Aug 2017 09:45:19 +0000 (17:45 +0800)]
app/testpmd: fix GRO command description
In testpmd, GRO is supported by csum forwarding engine, but the cmdline
message shows GRO is supported by io forwarding engine. This patch is
to fix this issue.
Fixes:
b40f8d782ba1 ("app/testpmd: enable TCP/IPv4 GRO")
Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Nelio Laranjeiro [Wed, 2 Aug 2017 15:32:56 +0000 (17:32 +0200)]
net/mlx5: add parameters to enable/disable vector datapath
Vector code is very young and can present some issues for users, to avoid
them to modify the selections function by commenting the code and recompile
the PMD, new devices parameters are added to deactivate the Tx and/or Rx
vector code.
By using such device parameters, the user will be able to fall back to
regular burst functions.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Yongseok Koh [Wed, 2 Aug 2017 17:25:54 +0000 (10:25 -0700)]
net/mlx5: fix error statistics in SSE Rx
If there's a Rx completion with error (e.g, MTU mismatch), it is handled
later out of main burst loop as a slow path for performance reason.
Statistics should be corrected by subtracting counters of errored packets.
Also, the last entry of mlx5_ptype_table[] must be RTE_PTYPE_ALL_MASK to
mark error in completion.
Fixes:
ea16068c0064 ("net/mlx5: fix L4 packet type support")
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Yongseok Koh [Wed, 2 Aug 2017 17:29:52 +0000 (10:29 -0700)]
net/mlx5: fix offload flags in SSE Rx
The pinfo variable has wrong data. This has to have merged data of two
fields from Rx completion - pkt_info and hdr_type_etc.
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Yongseok Koh [Tue, 1 Aug 2017 16:35:20 +0000 (09:35 -0700)]
net/mlx5: fix buffer address posting in SSE Rx
The data_off field of newly allocated mbufs is stale data. This shouldn't
be used in calculating Rx address for device when posting free buffers.
RTE_PKTMBUF_HEADROOM should be used instead and data_off of a mbuf will be
reset on packet reception anyway.
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Yongseok Koh [Thu, 3 Aug 2017 21:12:40 +0000 (14:12 -0700)]
net/mlx5: fix trimming SW ring for vectorized Rx
Unlike mlx5_rx_burst(), mlx5_rx_burst_vec() doesn't replace completed
buffers one by one right after completion is processed but replenishes
multiple buffers later with rte_mempool_get_bulk(). Therefore, there could
be some buffer addresses left in the SW ring (rxq->elts[]) which have
already been delivered to application. As PMD doesn't own such buffers, it
must not be freed by PMD. "Trimming" is needed before cleanup.
A problem can be seen when quitting testpmd when
CONFIG_RTE_LIBRTE_MBUF_DEBUG=y and CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=y
Trimming should be as simple as possible, it shouldn't touch any indexes
and buffer allocation isn't necessary.
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Nelio Laranjeiro [Thu, 3 Aug 2017 09:31:27 +0000 (11:31 +0200)]
net/mlx5: fix MTU update
Changing the MTU is not related to changing the number of segments,
activating or not the multi-segment support should be handled by the
application.
Fixes:
9964b965ad69 ("net/mlx5: re-add Rx scatter support")
Cc: stable@dpdk.org
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Matan Azrad [Wed, 2 Aug 2017 19:00:50 +0000 (22:00 +0300)]
net/mlx4: workaround verbs error after plug-out
Current mlx4 OFED version has bug which returns error to
ibv destroy functions when the device was plugged out, in
spite of the resources were destroyed correctly.
Hence, failsafe PMD was aborted, only in debug mode, when
it tries to remove the device in plug-out process.
The workaround added option to replace all claim_zero
assertions with debugging messages, by the way, this option
affects non ibv destroy assertions.
DPDK 18.02 release should work with Mellanox OFED-4.2 which will
include the verbs fix to this bug, then, this patch can
be removed.
Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Aaron Conole [Wed, 2 Aug 2017 18:02:13 +0000 (14:02 -0400)]
net/enic: fix crash when freeing 0 packet to mempool
Occasionally, the amount of packets to free from the work queue ends
perfectly on a boundary to have nb_free = 0 and pool = 0. This causes
a segfault as follows:
(gdb) bt
#0 rte_mempool_default_cache
#1 rte_mempool_put_bulk (n=0, obj_table=0x7f10deff2530, mp=0x0)
#2 enic_free_wq_bufs (wq=wq@entry=0x7efabffcd5b0,
completed_index=completed_index@entry=33)
#3 0x00007f11e9c86e17 in enic_cleanup_wq (enic=<optimized out>,
wq=wq@entry=0x7efabffcd5b0)
at /usr/src/debug/openvswitch-2.6.1/dpdk-16.11/drivers/net/enic/enic_rxtx.c:442
#4 0x00007f11e9c86e5f in enic_xmit_pkts (tx_queue=0x7efabffcd5b0,
tx_pkts=0x7f10deffb1a8, nb_pkts=<optimized out>)
at /usr/src/debug/openvswitch-2.6.1/dpdk-16.11/drivers/net/enic/enic_rxtx.c:470
#5 0x00007f11e9e147ad in rte_eth_tx_burst (nb_pkts=<optimized out>,
tx_pkts=0x7f10deffb1a8, queue_id=0, port_id=<optimized out>)
This commit makes the enic wq driver match other drivers who call the
bulk free, by checking that there are actual packets to free.
Fixes:
36935afbc53c ("net/enic: refactor Tx mbuf recycling")
CC: stable@dpdk.org
Reported-by: Vincent S. Cojot <vcojot@redhat.com>
Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=
1468631
Signed-off-by: Aaron Conole <aconole@redhat.com>
Reviewed-by: John Daley <johndale@cisco.com>
Qi Zhang [Wed, 2 Aug 2017 07:22:09 +0000 (15:22 +0800)]
net/i40e: fix Rx data segment buffer length
Buffer length be configured for each data segment should not exceed
the requested value, or device may fill data that exceed the boundary
of memory that be reserved.
Fixes:
4861cde46116 ("i40e: new poll mode driver")
Cc: stable@dpdk.org
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Reviewed-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Tested-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Gaetan Rivet [Thu, 3 Aug 2017 15:08:34 +0000 (17:08 +0200)]
net/failsafe: fix blank line parsing
When the output of an exec() slave definition is only a single newline
character, the fail-safe currently fails to parse the device with the
value returned by the rte_devargs library.
This behavior is incorrect, because the fail-safe should make a
difference between the absence of a device, and an erroneous device
declaration.
Fix the output sanitization in the case where no newline was at its end
and detect the special case of an absent device. The correct error code
is then returned.
Fixes:
a0194d828100 ("net/failsafe: add flexible device definition")
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Raslan Darawsheh [Thu, 3 Aug 2017 13:09:58 +0000 (16:09 +0300)]
net/failsafe: fix missing pclose after popen
When there is no preferred device, failsafe will always
try to scan for preferred device. And if there is no device
found with the exec option, popen() will get an empty output.
In this case, it was forgotten to close the file descriptor.
It is fixed by closing the file descriptor even if the output is empty.
Coverity issue: 158633
Fixes:
a0194d828100 ("net/failsafe: add flexible device definition")
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Acked-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Chas Williams [Mon, 24 Jul 2017 14:22:42 +0000 (10:22 -0400)]
net/vmxnet3: fix filtering on promiscuous disabling
We should only restore shadow_vfta when hw_vlan_filter is active.
Otherwise, we should restore the previous filtering behavior.
Fixes:
f003fc383487 ("vmxnet3: enable vlan filtering")
Cc: stable@dpdk.org
Signed-off-by: Chas Williams <ciwillia@brocade.com>
Acked-by: Shrikrishna Khare <skhare@vmware.com>
Tiwei Bie [Tue, 1 Aug 2017 09:01:21 +0000 (17:01 +0800)]
vhost: make page logging atomic
Each dirty page logging operation should be atomic. But it's not
atomic in current implementation. So it's possible that some dirty
pages can't be logged successfully when different threads try to
log different pages into the same byte of the log buffer concurrently.
This patch fixes this issue.
Fixes:
b171fad1ffa5 ("vhost: log used vring changes")
Cc: stable@dpdk.org
Reported-by: Xiao Wang <xiao.w.wang@intel.com>
Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Gaetan Rivet [Thu, 3 Aug 2017 12:34:31 +0000 (14:34 +0200)]
eal: fix leak on hotplug parsing error
If rte_eal_devargs_parse fails, the rte_devargs has not yet been inserted
in the global list. When jumping to err_devarg, the removal fails and it
is not properly freed.
Free the allocated rte_devargs if its removal failed.
Coverity issue: 158658
Fixes:
7e8b26650146 ("eal: fix hotplug add / remove")
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Gaetan Rivet [Thu, 3 Aug 2017 12:34:19 +0000 (14:34 +0200)]
eal: fix possible crash in hotplug
If devargs is NULL, building the full_dev_name will segfault
when using strlen on it.
Coverity issue: 158630
Fixes:
7e8b26650146 ("eal: fix hotplug add / remove")
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Gaetan Rivet [Wed, 2 Aug 2017 17:12:07 +0000 (19:12 +0200)]
devargs: fix policy check when adding arguments
Do not fail upon detecting a set bus configuration when adding an
rte_devargs. i.e. adding a blacklisted PCI device while the bus is
configured in whitelist mode.
This failure condition has been introduced when the bus policies
were implemented. This implementation however was meant to strictly
follow the existing API. This check was not and should not be performed
until the current API has been properly deprecated.
The same kind of check is already done when parsing EAL options.
Fixes:
02823c1db0bc ("devargs: parse bus policies")
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Gaetan Rivet [Wed, 2 Aug 2017 17:10:22 +0000 (19:10 +0200)]
eal: read and parse device option separately
When the EAL parses the common options given to the application,
not all subsystems are available. Some device drivers are registered
afterward upon dynamic plugin loading.
Devices using those drivers are thus unable to be parsed by any drivers
and are rejected.
Store the device options first and keep them for later processing.
Parse these right before initializing the buses, the drivers must have
been stabilized at this point.
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Tested-by: Dirk-Holger Lenz <dirk.lenz@ng4t.com>
Thomas Monjalon [Tue, 11 Jul 2017 17:10:46 +0000 (19:10 +0200)]
pci: fix log level of scan summary on BSD
Printing the number of scanned devices should be a debug log,
not an error.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Thomas Monjalon [Thu, 3 Aug 2017 13:53:50 +0000 (15:53 +0200)]
doc: notify libnuma dependency in release notes
Fixes:
066731939589 ("doc: add libnuma as dependency")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Thu, 3 Aug 2017 13:44:48 +0000 (15:44 +0200)]
doc: notify x86 SSE4.2 requirement in release notes
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Harry van Haaren [Wed, 12 Jul 2017 13:38:52 +0000 (14:38 +0100)]
doc: add author on cc to git fixline alias
With this commit, the correct method to use git fixline to indicate
a fix of a previous commit has changed. The new rules require the
author of the original code that is being fixed to be on CC.
The logic behind this improvement is that if there is a genuine bug,
one of the ideal people to review is the author of the original code
being fixed. Adding them on Cc makes them aware of the patch, avoiding
it from being passed by accidentally while reading the mailing-list.
Given that the original author (now on Cc:) might not actually review,
there is no value in keeping the Cc: in git commit history. If the
original author performs a review, their Reviewed-by: or Acked-by: is
stored in git history (same as now).
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Sat, 15 Jul 2017 09:49:48 +0000 (11:49 +0200)]
devtools: speed up maintainers check
There is a huge speed improvement when forcing Unicode to be disabled
in this script.
In my test, it is improved from 13s to 6s.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Sat, 15 Jul 2017 10:00:33 +0000 (12:00 +0200)]
devtools: add script to find duplicated includes
Based on Stephen's idea (originally implemented in a Perl script),
this is a shell script to find duplicated includes in a file.
It looks for all the .c and .h files of the git repository.
It is fast enough because automatically well parallelized.
Suggested-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Tested-by: Keith Wiles <keith.wiles@intel.com>
Thomas Monjalon [Mon, 31 Jul 2017 12:07:38 +0000 (14:07 +0200)]
devtools: ignore non merged tags for backport
When checking if a buggy commit was introduced in an old version,
the script compares last tag containing the bug and current version.
The non merged tags from non related branches must be ignored.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Mon, 31 Jul 2017 22:36:28 +0000 (00:36 +0200)]
version: 17.08-rc3
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Shahaf Shuler [Sun, 23 Jul 2017 10:23:09 +0000 (13:23 +0300)]
doc: postpone unaccomplished offloads deprecation
The work on ethdev Rx and Tx offloads has not been completed for 17.08.
It will be completed on 17.11
The notice is kept and postponed until the end of this work.
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Shahaf Shuler [Sat, 29 Jul 2017 16:17:32 +0000 (19:17 +0300)]
doc: move i40e specific to i40e guide
The Linux Getting Started Guide contains
parts which are specific for i40e PMD. This results
in confusion for users which read the guide at their
first try with DPDK.
Moving those parts to the i40e NIC manual.
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahaf Shuler [Sat, 29 Jul 2017 16:17:31 +0000 (19:17 +0300)]
doc: cleanup UIO hard requirement
UIO is not a must for all PMDs.
Cleaning up the Linux Getting Started Guide from this hard requirement.
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahaf Shuler [Sat, 29 Jul 2017 16:17:30 +0000 (19:17 +0300)]
doc: move kernel drivers to a new chapter
The UIO and VFIO sections should not be part of
the "Compiling the DPDK Target from Source" chapter,
as it is PMD specific and not true for all PMDs.
Instead, moving those sections to a new chapter
which include all kernel drivers being used along with
the different PMDs.
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahaf Shuler [Fri, 28 Jul 2017 14:28:33 +0000 (17:28 +0300)]
doc: update mlx guides
Update the guides with:
* New supported features.
* Supported OFED and FW versions.
* Quick start guide.
* Performance tunning guide.
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahaf Shuler [Fri, 28 Jul 2017 14:28:32 +0000 (17:28 +0300)]
doc: update release notes for mlx driver
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Shahaf Shuler [Fri, 28 Jul 2017 14:28:31 +0000 (17:28 +0300)]
doc: update mlx5 supported features
Supported features which were not included:
* ARMv8
* Extended stats
Not supported features which were wrongly included:
* Inner L3 checksum
* Inner L4 checksum
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Gage Eads [Mon, 31 Jul 2017 21:49:51 +0000 (16:49 -0500)]
mk: use extra cflags when linking libs with compiler
When using the compiler to link libraries, include EXTRA_CFLAGS. This is
needed when cross-compiling to pass --sysroot, for example. GCC
cross-compilers built with Yocto don't use the --with-sysroot option,
making it necessary to pass the --sysroot command-line option.
This is the same solution as in commit
e8fbb6d9cfd9 ("mk: use extra cflags
when linking with compiler"), but applied to libs instead of apps.
Signed-off-by: Gage Eads <gage.eads@intel.com>
Rami Rosen [Fri, 28 Jul 2017 21:35:05 +0000 (00:35 +0300)]
ethdev: fix doxygen comment for PCI info copy
This trivial patch removes wrong comments about
the return value of the rte_eth_copy_pci_info() method.
The method return value type is void.
Signed-off-by: Rami Rosen <rami.rosen@intel.com>
Wenzhuo Lu [Fri, 28 Jul 2017 18:55:58 +0000 (02:55 +0800)]
app/testpmd: fix usage message
There're '\n's missing, so the error prompt looks bad.
Fixes:
3af72783d1fd ("app/testpmd: configure event display")
Fixes:
7ee3e9446290 ("app/testpmd: add --flow-isolate-all option")
CC: stable@dpdk.org
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Pablo de Lara [Mon, 31 Jul 2017 04:40:37 +0000 (05:40 +0100)]
examples/l2fwd-crypto: fix possible out-of-bounds
rte_cryptodev_socket_id() returns the socket id of
a crypto device, unless the device id is not valid,
in which case, it returns -1.
This should not happen, as the device id is controlled
by the application, but just for safety, a check is added.
Coverity issue: 158628, 158638, 158656, 158662
Fixes:
b3bbd9e5f265 ("cryptodev: support device independent sessions")
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Jerin Jacob [Mon, 31 Jul 2017 10:04:52 +0000 (15:34 +0530)]
app/testeventdev: fix divide by zero in stats
pkts == 0 will result in divide by zero case.
Added a check to fix it.
Coverity issue: 158652
Fixes:
9d3aeb185eb4 ("app/testeventdev: launch perf lcores")
Cc: stable@dpdk.org
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Jerin Jacob [Mon, 31 Jul 2017 10:04:51 +0000 (15:34 +0530)]
app/testeventdev: fix string overflow in parsing
Coverity issue: 158660
Fixes:
4afd440ec132 ("app/testeventdev: update options through command line")
Cc: stable@dpdk.org
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Harry van Haaren [Mon, 31 Jul 2017 16:38:55 +0000 (17:38 +0100)]
service: fix shifts to operate on 64-bit integers
This commit fixes shifts to an integer (1 << shift) which
is assumed to be a 32-bit integer. In this case, the shift is
variable and expected to be valid for 64-bit integers. Given that
the expectation to work with 64 bits exists, we must ensure that
the (1 << shift) one in that formula is actually a uin64_t.
The UINT64_C() macro portably adds the correct suffix to a constant,
informing the compiler that the value is to be assigned 64 bits.
The issue would only manifests when there were greater than 31
services registered.
Fixes:
21698354c832 ("service: introduce service cores concept")
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Wei Dai [Mon, 31 Jul 2017 18:12:11 +0000 (02:12 +0800)]
net/ixgbe: support 2.5G and 5G on X550
This patch adds support of 2.5G and 5G ethernet interface on X550.
Signed-off-by: Wei Dai <wei.dai@intel.com>
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Rasesh Mody [Mon, 24 Jul 2017 10:19:08 +0000 (03:19 -0700)]
net/qede: update PMD version 2.5.2.1
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Rasesh Mody [Mon, 24 Jul 2017 10:19:07 +0000 (03:19 -0700)]
net/qede: fix chip details print
Fix chip details printed as part of print adapter info
Fixes:
2ea6f76aff40 ("qede: add core driver")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Harish Patil [Mon, 24 Jul 2017 10:19:05 +0000 (03:19 -0700)]
net/qede: fix inner L3/L4 checksum for tunnels
Force recalculation of tunnel L4 chksum when inner L3/L4 chksum gets
updated due to HW offload.
Fixes:
aab21617502e ("net/qede: add Tx offloads for MPLS-in-UDP packets")
Signed-off-by: Harish Patil <harish.patil@cavium.com>
Rasesh Mody [Mon, 24 Jul 2017 10:19:04 +0000 (03:19 -0700)]
net/qede/base: fix for adapter specific stats
Handle different MAC statistic fields between two chip variants by
reading the MAC counters from the adapter suitable statistics bins.
Fixes:
ec94dbc57362 ("qede: add base driver")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Harish Patil [Mon, 24 Jul 2017 10:19:03 +0000 (03:19 -0700)]
net/qede: fix incorrect queue id for 100G
'commit
4c4bdadfa9e7 ("net/qede: refactoring multi-queue implementation")'
introduced a regression where default RSS configuration is incorrect in
the case of 100G mode. Currently we are passing absolute queue ids while
creating RX/TX queues. But in CMT mode we need to provide queue id
relative to the engine id. So this fix takes into account num_hwfns
while creating queues.
Fixes:
4c4bdadfa9e7 ("net/qede: refactoring multi-queue implementation")
Signed-off-by: Harish Patil <harish.patil@cavium.com>
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Rasesh Mody [Mon, 24 Jul 2017 10:19:02 +0000 (03:19 -0700)]
net/qede/base: fix recovery from previous ungraceful exit
This patch modifies the recovery flow to allow ongoing PCIe
transactions to be completed. To achieve this, the load sequence is
changed such that the "final_cleanup" notification is sent while the
FID_enable is cleared.
This change ensures that the chip cleanup actions takes place from
previous driver instance if needed.
Fixes:
ec94dbc57362 ("qede: add base driver")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Ajit Khaparde [Mon, 31 Jul 2017 16:24:23 +0000 (11:24 -0500)]
net/bnxt: fix arguments to callback process
The callback arguments to _rte_eth_dev_callback_process() are swapped.
Fix them.
Fixes:
d6af1a13d7a1 ("ethdev: add return values to callback process API")
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Matan Azrad [Mon, 31 Jul 2017 14:30:29 +0000 (17:30 +0300)]
net/mlx4: fix probe failure report
The corrupted code doesn't return error when probe function
fails due to error in device mac address getting.
By this way, the probe function may return success even if the
ETH dev is not allocated.
Hence, the probe caller, for example failsafe PMD, fails when it
tries to get ETH dev after the device was plugged out while mlx4
was probing it.
The fix adds error report to the probe caller when priv_get_mac fails
and in all other failure options which are missing it.
By this way, it prevents the unexpected behavior to miss ETH device
after the device was probed successfully.
Fixes:
7fae69eeff13 ("mlx4: new poll mode driver")
Fixes:
001a520e419f ("net/mlx4: add port parameter")
Fixes:
7b0661539229 ("mlx4: check if port is configured for ethernet")
Fixes:
fec3608673e6 ("mlx4: query netdevice to get initial MAC address")
Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Matan Azrad [Thu, 27 Jul 2017 10:27:24 +0000 (13:27 +0300)]
net/mlx4: fix flow creation before start
The corrupted code causes segmentation fault when user creates
flow with drop action before device starting.
For example, failsafe PMD recreates all the flows before calling
dev_start in plug-in sequence and mlx4 allocated its flow drop
queue in dev_start.
Hence, when failsafe created flow with drop action after plug-in
event, mlx4 tried to dereference flow drop queue which was
uninitialized.
The fix added check to the drop qp accessible and conditioned the
ibv_create_flow calling on device starting.
Fixes:
642fe56a1ba5 ("net/mlx4: use a single drop queue for all drop flows")
Fixes:
46d5736a7049 ("net/mlx4: support basic flow items and actions")
Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Yongseok Koh [Wed, 26 Jul 2017 19:29:33 +0000 (12:29 -0700)]
net/mlx5: fix L4 packet type support
TCP/UDP/NONFRAG/FRAG flags aren't counted for both outer and inner
header even though device supports it.
Fixes:
0603df73a077 ("net/mlx5: fix Rx packet validation and type")
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Yongseok Koh [Wed, 26 Jul 2017 19:29:32 +0000 (12:29 -0700)]
net/mlx5: fix missing packet type calculation
Calculation of packet type is currently enabled only when HW checksum is
enabled.
This isn't related to HW checksum offload. Enable it regardless.
Fixes:
081f7eae242e ("mlx5: process offload flags only when requested")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Yongseok Koh [Tue, 25 Jul 2017 16:42:16 +0000 (09:42 -0700)]
net/mlx5: fix counting consumed Tx descriptors
When advancing Tx ring index (txq->wqe_ci) in txq_scatter_v(), the title
descriptor of multi-packet send isn't taken into account if it doesn't
cross 64B boundary.
Fixes:
6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Yongseok Koh [Thu, 20 Jul 2017 15:48:35 +0000 (08:48 -0700)]
net/mlx5: poll completion queue once per a call
mlx5_tx_complete() polls completion queue multiple times until it
encounters an invalid entry. As Tx completions are suppressed by
MLX5_TX_COMP_THRESH, it is waste of cycles to expect multiple
completions in a poll. And freeing too many buffers in a call can
cause high jitter.
This patch improves throughput a little.
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Daniel Mrzyglod [Thu, 27 Jul 2017 06:41:09 +0000 (08:41 +0200)]
doc: add 802.3ad modes in testpmd guide
Add testpmd commands for setting aggregators mode in mode 4 (IEEE802.3AD).
Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Tomasz Kulasek [Wed, 26 Jul 2017 15:48:29 +0000 (17:48 +0200)]
test/bonding: fix device name
Bonding devices name must start with "net_bonding" prefix.
Fixes:
9bf4901d1a11 ("bus/vdev: remove probe with driver name option")
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Daniel Mrzyglod [Wed, 26 Jul 2017 15:44:03 +0000 (17:44 +0200)]
test/bonding: fix namespace of the RSS tests
Drivers are looking by name of the device so change namespace to proper
one.
Fixes:
43b630244e7e ("app/test: add dynamic bonding RSS configuration")
Cc: stable@dpdk.org
Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Herbert Guan [Thu, 13 Jul 2017 08:00:36 +0000 (16:00 +0800)]
test/bonding: fix parameters of a balance Tx
When test case "test_balance_l23_tx_burst_ipv4_toggle_ip_addr" is
calling balance_l23_tx_burst(), the ip_addr instead of mac_addr
should be toggled according to the test name.
Fixes:
92073ef961ee ("bond: unit tests")
Cc: stable@dpdk.org
Signed-off-by: Herbert Guan <herbert.guan@arm.com>
Acked-by: Jianbo Liu <jianbo.liu@linaro.org>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Herbert Guan [Mon, 10 Jul 2017 11:13:46 +0000 (19:13 +0800)]
test/bonding: fix memory corruptions
There were double-free problems in some test cases, which will cause
a duplicated mbuf will be added into mempool. After double-free,
some new allocated mbuf will hold a same address and thus cause the
memory corruption.
Another minor issue is that in some test cases, allocated mbuf will
not be released after test case exits. Hopefully these leaked mbuf
will be released by the next test case in its setup phase when
stopping the virtual pmd ports, while this do is a memory leak of
the exited test case.
To fix above 2 issues, this patch will do:
1) Release virtual pmd ports' tx queue in the clean up function
remove_slaves_and_stop_bonded_device() of each test cases.
2) Do not release allocated mbufs for test bursts. These mbufs
will be released in remove_slaves_and_stop_bonded_device() when
test case exits.
Fixes:
92073ef961ee ("bond: unit tests")
Signed-off-by: Herbert Guan <herbert.guan@arm.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Tomasz Kulasek [Wed, 26 Jul 2017 15:46:07 +0000 (17:46 +0200)]
test: fix virtual device name not set
Device name in device structure in virtual device used in
link_bonding_autotest is not set what causes segmentation fault when
rte_eth_dev_allocated is called.
Fixes:
a1e7c17555e8 ("ethdev: use device name from device structure")
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Ajit Khaparde [Sat, 29 Jul 2017 20:54:09 +0000 (15:54 -0500)]
net/bnxt: fix setting conflicting VLAN bits
Only set the vlanonly bit if vlan_nonvlan is clear. Also, allow the
VLAN table to be cleared when vlanonly is set.
Clearing the VLAN table when vlanonly is set will stop all traffic
since it requires all frames to have a VLAN tag, and that tag to be
in the zero-length table. This is still a valid use case though,
and has been seen in the wild.
Fixes:
36735a932ca7 ("net/bnxt: support set VF QOS and MAC anti spoof")
Signed-off-by: Stephen Hurd <stephen.hurd@broadcom.com>
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Xiaoyun Li [Fri, 28 Jul 2017 15:48:11 +0000 (23:48 +0800)]
net/i40e: fix PF notify when VF is not up
This patch stops PF from sending messages to inactive VF
and modifies VF state to active when VF reset is completed.
Fixes:
4861cde46116 ("i40e: new poll mode driver")
Cc: stable@dpdk.org
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Kuba Kozak [Thu, 27 Jul 2017 07:28:22 +0000 (09:28 +0200)]
net/i40e: fix parsing QinQ pattern
Add check if o_vlan_mask and i_vlan_mask are not a NULL pointer.
Coverity issue: 143448
Coverity issue: 143449
Fixes:
d37705068ee8 ("net/i40e: parse QinQ pattern")
Cc: stable@dpdk.org
Signed-off-by: Kuba Kozak <kubax.kozak@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Gowrishankar Muthukrishnan [Mon, 31 Jul 2017 12:54:27 +0000 (18:24 +0530)]
net/bonding: enable in ppc64le
Earlier bonding pmd was disabled in default config for ppc64le.
Hence, removing it as it has been verified.
Signed-off-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
Tomasz Kulasek [Wed, 26 Jul 2017 15:53:30 +0000 (17:53 +0200)]
net/bonding: fix link status interrupt when down
RTE_ETH_EVENT_INTR_LSC callbacks are not called when all slaves goes down
in bond_ethdev_lsc_event_callback. It causes that link status change of
bonded device is not propagated up.
Fixes:
deba8a2f8b0b ("net/bonding: fix link properties management")
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Tomasz Kulasek [Wed, 26 Jul 2017 15:50:48 +0000 (17:50 +0200)]
net/bonding: fix crash when primary slave set
rte_eth_bond_primary_set segfaults for invalid port. This patch moves
devices check before use of internal data.
Fixes:
4c42498d916d ("net/bonding: allow slaves to also be bonded devices")
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
David Hunt [Mon, 24 Jul 2017 08:48:44 +0000 (09:48 +0100)]
net/i40e: fix sync phy type by adding retry
Some phy's take longer than others to come up. Add a retry to give
more phy's a chance to come up before returning an error.
Fixes:
2209c3e2c275 ("net/i40e: avoid PCI probing failure when using bogus SFP")
Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>