Bruce Richardson [Fri, 8 Jun 2018 21:20:45 +0000 (22:20 +0100)]
net/nfp: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:44 +0000 (22:20 +0100)]
net/liquidio: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:43 +0000 (22:20 +0100)]
net/kni: add to meson build
Since the kni library is an optional library, we need to add a check
here to ensure that the kni wrapper PMD is only built when the main kni
lib is being built.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:40 +0000 (22:20 +0100)]
net/failsafe: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:39 +0000 (22:20 +0100)]
net/ena: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:38 +0000 (22:20 +0100)]
net/cxgbe: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:37 +0000 (22:20 +0100)]
net/bnxt: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:36 +0000 (22:20 +0100)]
net/bnx2x: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:35 +0000 (22:20 +0100)]
net/avp: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Allain Legacy <allain.legacy@windriver.com>
Bruce Richardson [Fri, 8 Jun 2018 21:20:34 +0000 (22:20 +0100)]
net/ark: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Xiao Wang [Wed, 13 Jun 2018 11:32:46 +0000 (19:32 +0800)]
net/ifc: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Xiao Wang [Wed, 13 Jun 2018 11:32:45 +0000 (19:32 +0800)]
net/ifc: make driver name consistent
Make the compiler switch name and document name consistent as ``ifc`` to
avoid confusion. Also rename the map file to standard name for meson
build in the process.
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Ferruh Yigit [Thu, 31 May 2018 13:22:45 +0000 (14:22 +0100)]
ethdev: force RSS offload rules again
PMDs should provide supported RSS hash functions via
dev_info.flow_type_rss_offloads variable.
There is a check in ethdev if requested RSS hash function is supported
by PMD or not.
This check has been relaxed in previous release to not return an error
when a non supported has function requested [1], this has been done to
not break the applications.
Adding the error return back.
PMDs need to provide correct list of supported hash functions and
applications need to take care this information before configuring
the RSS otherwise they will get an error from APIs:
rte_eth_dev_rss_hash_update()
rte_eth_dev_configure()
[1] commit
af7551e2bfce ("ethdev: remove error return on RSS hash check")
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Ferruh Yigit [Thu, 31 May 2018 12:44:30 +0000 (13:44 +0100)]
ethdev: force offloading API rules
The error path was disabled in previous release to let apps to be more
flexible.
But this release they are enabled, applications have to obey offload API
rules otherwise they will get errors from following APIs:
rte_eth_dev_configure
rte_eth_rx_queue_setup
rte_eth_tx_queue_setup
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Alejandro Lucero [Mon, 11 Jun 2018 09:50:37 +0000 (10:50 +0100)]
net/nfp: fix field initialization in Tx descriptor
TX descriptor eop_offset field is not initialized and it could
contain garbage. This patch fixes the potential problem setting
EOP as the only subfield. The other subfield, data offset, is
not used by now.
Fixes:
b812daadad0d ("nfp: add Rx and Tx")
Cc: stable@dpdk.org
Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:17 +0000 (23:28 +0530)]
net/cxgbe: implement flow flush operation
Add API to flush all the filters under specified port.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:16 +0000 (23:28 +0530)]
net/cxgbe: implement flow query operation
Add API to query filter hit and byte counts from hardware.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:15 +0000 (23:28 +0530)]
net/cxgbe: implement flow destroy operation
Add API to construct delete filter work request to remove filter
at specified index in LE-TCAM (maskfull) region.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:14 +0000 (23:28 +0530)]
net/cxgbe: implement flow create operation
Define filter work request API used to construct filter operations
to be communicated with firmware. These requests are sent via
control queue and completions come asynchronously in firmware event
queue.
Implement flow create operation to create filters in LE-TCAM
(maskfull) region at specified index.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:13 +0000 (23:28 +0530)]
net/cxgbe: add control queue to communicate filter requests
Add control queue to communicate filter creation/deletion requests
with firmware. This API will be used by subsequent patches.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:12 +0000 (23:28 +0530)]
net/cxgbe: parse and validate flows
Introduce rte_flow skeleton and implement validate operation.
Parse and convert <item>, <action>, <attributes> into hardware
specification. Perform validation, including basic sanity tests
and underlying device's supported filter capability checks.
Currently add support for:
<item>: IPv4, IPv6, TCP, and UDP.
<action>: Drop, Queue, and Count.
Also add sanity checks to ensure filters are created at specified
index in LE-TCAM region. The index in LE-TCAM region indicates
the filter rule's priority with index 0 having the highest priority.
If no index is specified, filters are created at closest available
free index.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Shagun Agrawal [Fri, 8 Jun 2018 17:58:11 +0000 (23:28 +0530)]
net/cxgbe: query firmware for filter resources
Fetch available filter resources from firmware and allocate table for
book-keeping and managing filters in hardware. Also define the hardware
filter specification (ch_filter_specification) used to describe each
filter rule.
Signed-off-by: Shagun Agrawal <shaguna@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Alejandro Lucero [Mon, 11 Jun 2018 11:20:46 +0000 (12:20 +0100)]
net/nfp: fix unused header reference
Apart from not being used, this is causing problem when compiling
DPDK with the musl library as reported by bugzilla.
Bugzilla ID: 40
Fixes:
c7e9729da6b5 ("net/nfp: support CPP")
Cc: stable@dpdk.org
Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:22 +0000 (11:43 +0200)]
net/ena: set link speed as none
Link speed should is not limited to 10Gb/s and it shouldn't be hardcoded.
They link speed is set to none instead and the applications shouldn't
rely on this value when using ENA PMD.
Fixes:
1173fca25af9 ("ena: add polling-mode driver")
Cc: stable@dpdk.org
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:21 +0000 (11:43 +0200)]
net/ena: store handle after memory allocation
The pointer received from rte_memzone_reserve from macro
ENA_MEM_ALLOC_COHERENT_NODE was not stored anywhere, and as a result
memory allocated by this macro could not been released.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:20 +0000 (11:43 +0200)]
net/ena: fix GENMASK_ULL macro
When use GENMASK_ULL(63,0) left shift by 64 bits is performed.
Shifting by number greater or equal then word length
is undefined operation and failed on some platforms.
Fixes:
9ba7981ec992 ("ena: add communication layer for DPDK")
Cc: stable@dpdk.org
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:19 +0000 (11:43 +0200)]
net/ena: change memory type
ENA_MEM_ALLOC_NODE not need to use contiguous physical memory.
Also using memset without checking if allocation succeed can cause
segmentation fault.
To avoid both issue use rte_zmalloc_socket.
Fixes:
3d3edc265fc8 ("net/ena: make coherent memory allocation NUMA-aware")
Cc: stable@dpdk.org
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:18 +0000 (11:43 +0200)]
net/ena: check pointer before memset
Need to check if memory allocation succeed before using it.
Using memset on NULL pointer cause segfault.
Fixes:
9ba7981ec992 ("ena: add communication layer for DPDK")
Cc: stable@dpdk.org
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:17 +0000 (11:43 +0200)]
net/ena: update NUMA node
During initializing Tx queues update Non-Uniform Memory Access
configuration in NIC firmware.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:16 +0000 (11:43 +0200)]
net/ena: adjust error checking and cleaning
Adjust error checking and cleaning to Linux driver:
* add checking if MTU is to small,
* fix error messages (mismatched Rx and Tx),
* return error received from base driver or proper error
code instead of -1,
* in case of error release occupied resources,
* in case of Rx error trigger NIC reset.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:15 +0000 (11:43 +0200)]
net/ena: add (un)likely statements
Add likely and unlikely statements to increase performance.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:14 +0000 (11:43 +0200)]
net/ena: validate Tx req id
Validate Tx req id during clearing completed packets.
If id is wrong, trigger NIC reset.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:13 +0000 (11:43 +0200)]
net/ena: rework configuration of IO queue numbers
Move configuration of IO queue numbers to separate function and take
into consideration max number of IO completion queues.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:12 +0000 (11:43 +0200)]
net/ena: log unimplemented handler error
Enable AENQ FATAL_ERROR and WARNING callbacks by setting flags
in aenq_groups. They are handled by "unimplemented handler".
If unimplemented handler is called, error is logged.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:11 +0000 (11:43 +0200)]
net/ena: add info about max number of Tx/Rx descriptors
In function ena_infos_get driver provides information about minimal
and maximal number of Rx and Tx descriptors.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:10 +0000 (11:43 +0200)]
net/ena: linearize Tx mbuf
Function ena_check_and_linearize_mbuf check Tx mbuf for number of
segments and linearize (defragment) it if necessary. It is called
before sending each packet.
Information about maximum number of segments is stored per each ring.
Maximum number of segments supported by NIC is taken from ENA COM in
ena_calc_queue_size function and stored in adapter structure.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:09 +0000 (11:43 +0200)]
net/ena: add Rx out of order completion
This feature allows Rx packets to be cleaned up out of order.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:08 +0000 (11:43 +0200)]
net/ena: make watchdog configurable
Add variable wd_state to make driver functional without keep alive
AENQ handler.
The watchdog will be executed only if the aenq group has keep alive
enabled.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:07 +0000 (11:43 +0200)]
net/ena: check for admin queue state
The admin queue can stop responding or became inactive due to unexpected
behaviour of the device. In that case, the whole device should be
restarted.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:06 +0000 (11:43 +0200)]
net/ena: add watchdog and keep alive AENQ handler
Keep alive is executing AENQ interrupt periodically. It allows to check
health of the device and trigger reset event if the device will stop
responding.
To check for the state of the device, the DPDK application must call
rte_timer_manage().
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:04 +0000 (11:43 +0200)]
net/ena: add reset routine
Reset routine can be used by the DPDK application to reset the device in
case of receiving RTE_ETH_EVENT_INTR_RESET from the PMD.
The reset event is not triggered by the driver, yet. It will be added in
next commits to enable error recovery in case of misfunctioning of the
device.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:03 +0000 (11:43 +0200)]
net/ena: restart only initialized queues instead of all
There is no need to check for restart all queues. It is sufficient to
check only previously initialized queues.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:43:02 +0000 (11:43 +0200)]
net/ena: handle ENA notification
When ENA notifications are provided ena_notification handler is called.
It checks if received value is not corrupted and if necessary it
reports proper warnings.
Data received from NIC is parsed in ena_update_hints. Fields for
storing those information was added to ena_adapter structure.
ENA notification are enabled by setting ENA_ADMIN_NOTIFICATION flag in
aenq_groups.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:01 +0000 (11:43 +0200)]
net/ena: add LSC intr support and AENQ handling
To make the LSC interrupt working, the AENQ must be configured properly
in the ENA device. The AENQ interrupt is common for all maintenance
interrupts - the proper handler is then executed depending on the
received descriptor.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:43:00 +0000 (11:43 +0200)]
net/ena: add stop and uninit routines
Lack of uninit routine could lead to memory leak.
Stop was added to fulfill allowed PMD operations.
Checks for the PMD states in the start and configure routine were
removed, as the upper layer is already checking for them.
The interrupt setup was moved from start to init function.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:42:59 +0000 (11:42 +0200)]
net/ena: add interrupt handler for admin queue
The ENA device is able to send MSI-X when it will complete an command
when polling mode is deactivated. Further, the same interrupt handler
will be used for the AENQ handling - services of the ENA device, that
allows to implement watchdog or LSC handler.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Rafal Kozik [Thu, 7 Jun 2018 09:42:58 +0000 (11:42 +0200)]
net/ena: remove support of legacy LLQ
The legacy LLQ should no longer be supported by the drivers, as this API
is deprecated. Because of that, it was removed from the driver.
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Michal Krawczyk [Mon, 11 Jun 2018 11:01:23 +0000 (13:01 +0200)]
net/ena: update HAL to the newer version
ena_com is the HAL provided by the vendor and it shouldn't be modified
by the driver developers.
The PMD and platform file was adjusted for the new version of the
ena_com:
* Do not use deprecated meta descriptor fields
* Add empty AENQ handler structure with unimplemented handlers
* Add memzone allocations count to ena_ethdev.c file - it was
removed from ena_com.c file
* Add new macros used in new ena_com files
* Use error code ENA_COM_UNSUPPORTED instead of ENA_COM_PERMISSION
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Signed-off-by: Rafal Kozik <rk@semihalf.com>
Michal Krawczyk [Thu, 7 Jun 2018 09:42:56 +0000 (11:42 +0200)]
net/ena: change version number to 1.1.0
The upcoming patches for the ENA PMD are part of 1.1.0 update of the PMD
and the version number is updated accordingly.
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
David Marchand [Thu, 7 Jun 2018 05:36:05 +0000 (07:36 +0200)]
net/bnxt: add missing ids in xstats
The xstats API expects that the driver fills both values and ids for
each filled entries.
Fixes:
bfb9c2260be2 ("net/bnxt: support xstats get/reset")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@6wind.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Maxime Coquelin [Tue, 29 May 2018 09:45:14 +0000 (11:45 +0200)]
vhost: improve batched copies performance
Instead of copying batch_copy_nb_elems into the stack,
this patch uses it directly.
Small performance gain of 3% is seen when running PVP
benchmark.
Acked-by: Zhihong Wang <zhihong.wang@intel.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Tue, 29 May 2018 09:45:13 +0000 (11:45 +0200)]
vhost: unify Rx mergeable and non-mergeable paths
This patch reworks the vhost enqueue path so that a single
code path is used for both Rx mergeable or non-mergeable cases.
Acked-by: Zhihong Wang <zhihong.wang@intel.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Shahed Shaikh [Thu, 7 Jun 2018 16:30:52 +0000 (09:30 -0700)]
net/qede: fix link change event notification
As per existing behavior, when firmware sends a link change
notification, PMD only updates the link structure but does
not notify applications about it.
This results in application sending packets even when link
status is down.
Fix this issue by issuing RTE_ETH_EVENT_INTR_LSC.
Fixes:
ec94dbc57362 ("qede: add base driver")
Cc: stable@dpdk.org
Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
Shahed Shaikh [Thu, 7 Jun 2018 16:30:51 +0000 (09:30 -0700)]
net/qede: fix incorrect link status update
qede_link_update() always returns -1 i.e. link not changed,
because it compares the variables which always hold same value.
Fix this function by using rte_eth_linkstatus_set().
Fixes:
2ea6f76aff40 ("qede: add core driver")
Cc: stable@dpdk.org
Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
Rasesh Mody [Thu, 7 Jun 2018 16:30:20 +0000 (09:30 -0700)]
net/qede: fix memory alloc for multiple port reconfig
Multiple port reconfigurations can lead to memory allocation failures
due to hitting RTE memzone limit or no more room in config while
reserving memzone.
When freeing memzones, update the memzone mapping and the memzone count.
Release Rx and Tx queue rings allocated during queue setup.
Fixes:
a39001d90dbd ("net/qede: fix DMA memory leak")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Reviewed-by: Kevin Traynor <ktraynor@redhat.com>
Rasesh Mody [Tue, 5 Jun 2018 23:03:57 +0000 (16:03 -0700)]
net/qede: fix L2-handles used for RSS hash update
Fix fast path array index which is used for passing L2 handles to RSS
indirection table, properly distribute rxq handles for indirection table.
Currently, it is using the local copy of indirection table. When the RX
queue configuration changes the local copy becomes invalid.
Fixes:
69d7ba88f1a1 ("net/qede/base: use L2-handles for RSS configuration")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Reviewed-by: Kevin Traynor <ktraynor@redhat.com>
Tomasz Duszynski [Mon, 4 Jun 2018 09:24:28 +0000 (11:24 +0200)]
net/mvpp2: check pointer before using it
Avoid NULL dereference by checking pointer before using it.
Note that the fixes tag is before the driver was renamed
to mvpp2, so the patch will not apply that far back.
Fixes:
3588aaa68eab ("net/mrvl: fix HIF objects allocation")
Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
Tomasz Duszynski [Mon, 4 Jun 2018 08:55:33 +0000 (10:55 +0200)]
net/mvpp2: convert to dynamic logging
Convert mvpp2 PMD to use dynamic logging.
Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
Rahul Lakkireddy [Wed, 23 May 2018 18:00:49 +0000 (23:30 +0530)]
net/cxgbe: report configured link auto-negotiation
Report current configured link auto-negotiation. Also initialize
rte_eth_link.
Coverity issue: 280648
Fixes:
f5b3c7b29357 ("net/cxgbevf: fix inter-VM traffic when physical link down")
Cc: stable@dpdk.org
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Rasesh Mody [Tue, 22 May 2018 23:16:04 +0000 (16:16 -0700)]
net/qede: fix for devargs
Do not error out on invalid devarg, log the message and continue.
Decide updating the tx-switching config in check args. Add a check for
VF when disabling tx-switching
Fixes:
612ce81b2007 ("net/qede: add devargs to disable NPAR Tx switching")
Fixes:
f64b91b0eb5d ("net/qede: replace config option with run-time arg")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Rasesh Mody [Tue, 22 May 2018 23:16:03 +0000 (16:16 -0700)]
net/qede: fix VF MTU update
This patch fixes VF MTU update to work without having to restart the
vport and there by not requiring port re-configuration. It adds a
VF MTU Update TLV to achieve the same. Firmware can handle VF MTU update
by just pausing the vport.
Fixes:
dd28bc8c6ef4 ("net/qede: fix VF port creation sequence")
Cc: stable@dpdk.org
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
Vipin Varghese [Sat, 12 May 2018 06:30:12 +0000 (12:00 +0530)]
net/tap: update tap index to unsigned
Updating the logic to reflect unsigned integer as index for TAP PMD.
Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: Keith Wiles <keith.wiles@intel.com>
Bruce Richardson [Fri, 8 Jun 2018 10:35:12 +0000 (11:35 +0100)]
devtools: fix ARM builds test with meson
For cross-builds the CC environmental variable only applies for compiling
native binaries i.e. pmdinfogen, so setting it to a cross-build compiler
will only cause problems. Leave the value unset in the script to use the
platform-default compiler.
Fixes:
a55277a788df ("devtools: add test script for meson builds")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Maxime Coquelin [Tue, 12 Jun 2018 08:01:27 +0000 (10:01 +0200)]
maintainers: add vhost and virtio co-maintainers
Add Tiwei and Zhihong as co-maintainers for the Vhost and
Virtio components. They have done great contributions recently,
and been very helpful in helping to review Vhost and Virtio series.
Also, add Tiwei as backup for the Next-virtio tree.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Tiwei Bie <tiwei.bie@intel.com>
Acked-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Zhiyong Yang <zhiyong.yang@intel.com>
Maxime Coquelin [Tue, 12 Jun 2018 08:01:26 +0000 (10:01 +0200)]
maintainers: update for vhost PMD
Tetsuya has kindly agreed to handover the maintainership
for the Vhost PMD. Thanks to him for his contributions.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Tetsuya Mukawa <mtetsuyah@gmail.com>
Stephen Hemminger [Tue, 17 Apr 2018 21:49:19 +0000 (14:49 -0700)]
devtools: ignore SPDX warning of checkpatch
Since DPDK developers have decided to use a different tag format
than the kernel developers, ignore warnings about SPDX tags.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Thomas Monjalon [Fri, 1 Jun 2018 10:58:36 +0000 (12:58 +0200)]
version: 18.08-rc0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Thu, 31 May 2018 17:01:57 +0000 (19:01 +0200)]
doc: add template release notes for 18.08
Add template release notes for DPDK 18.08 with inline
comments and explanations of the various sections.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Wed, 30 May 2018 13:55:39 +0000 (15:55 +0200)]
version: 18.05.0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
John McNamara [Wed, 30 May 2018 20:25:03 +0000 (21:25 +0100)]
doc: update release notes for 18.05
Fix grammar, spelling and formatting of DPDK 18.05 release notes.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Ferruh Yigit [Wed, 30 May 2018 17:46:06 +0000 (18:46 +0100)]
doc: add ixgbe detach crash in release notes
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Anoob Joseph [Tue, 29 May 2018 10:45:36 +0000 (16:15 +0530)]
crypto/armv8: fix HMAC supported digest sizes
For HMAC algorithms (SHAx-HMAC), the supported digest sizes are not a
fixed value, but a range between 1 and the maximum digest size for those
algorithms.
Fixes:
0f89def76127 ("crypto/armv8: fix HMAC supported key sizes")
Cc: stable@dpdk.org
Signed-off-by: Anoob Joseph <anoob.joseph@caviumnetworks.com>
Signed-off-by: Sachin Saxena <sachin.saxena@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
David Marchand [Wed, 30 May 2018 14:45:29 +0000 (16:45 +0200)]
mem: add missing newline in callback log
Fixes:
56efb4c11753 ("malloc: support callbacks on memory events")
Signed-off-by: David Marchand <david.marchand@6wind.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
David Marchand [Wed, 30 May 2018 14:42:53 +0000 (16:42 +0200)]
net/mlx5: register memory callback only when probing
The callback should be invoked only for memory that has been registered
in a device, hence, no need to track cleanup events if no device is
present.
Bugzilla ID: 56
Fixes:
974f1e7ef146 ("net/mlx5: add new memory region support")
Signed-off-by: David Marchand <david.marchand@6wind.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Tested-by: Ferruh Yigit <ferruh.yigit@intel.com>
Chas Williams [Wed, 30 May 2018 14:44:39 +0000 (10:44 -0400)]
maintainers: claim responsibility for bonding PMD
Add myself as co-maintainer for bonding driver and related materials.
Signed-off-by: Chas Williams <chas3@att.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Maxime Coquelin [Mon, 28 May 2018 11:32:09 +0000 (13:32 +0200)]
doc: add vhost performance regression in release notes
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Radu Nicolau [Mon, 28 May 2018 13:43:46 +0000 (14:43 +0100)]
doc: add bonding known issue in release notes
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Anatoly Burakov [Tue, 29 May 2018 15:43:06 +0000 (16:43 +0100)]
doc: add multiprocess known issue in release notes
Also, reference Bugzilla entry for keeping most current information in
one place.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Reshma Pattan [Mon, 28 May 2018 15:40:22 +0000 (16:40 +0100)]
doc: add rte_abort issue on FreeBSD in release notes
Added known issue of rte_abort taking a long time
on FreeBSD due to recent memory subsystem rework.
Also, reference Bugzilla entry for keeping most
current information in one place.
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Rosen Xu [Wed, 16 May 2018 07:29:12 +0000 (15:29 +0800)]
doc: add Linux 4.10.0 known issue in release notes
Linux kernel 4.10.0 IOMMU attribute read error.
Cc: stable@dpdk.org
Signed-off-by: Rosen Xu <rosen.xu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Andrew Rybchenko [Mon, 28 May 2018 06:50:47 +0000 (07:50 +0100)]
net/sfc: add missing Rx descriptor status callback
Rx descriptor status callback was lost and request of the Rx
descriptor status crashes application if equal stride super-buffer
Rx mode is used.
Fixes:
390f9b8d82c9 ("net/sfc: support equal stride super-buffer Rx mode")
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Fan Zhang [Wed, 30 May 2018 08:30:47 +0000 (09:30 +0100)]
net/i40e: fix link status update
This patch fixes link status update problem in interrupt mode.
Previously, directly reading link status register instead of
accessing via admin queue command may cause the link status
change interrupt callback inactive. This patch fixes the
problem by making the driver only read the register in
"no wait" and polling mode.
Bugzilla ID: 54
Fixes:
eef2daf2e199 ("net/i40e: fix link update no wait")
Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Tested-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Yongseok Koh [Sun, 27 May 2018 07:04:55 +0000 (00:04 -0700)]
net/mlx4: fix crash when configure is not called
Although uncommon, applications may destroy a device immediately after
probing it without going through dev_configure() first.
This patch addresses a crash which occurs when mlx4_dev_close() calls
mlx4_mr_release() due to an uninitialized entry in the private structure.
In addition MR cache init takes place on the device configuration.
When the device is re-configured multiple times, for example when
changing the number of queue on the flight, deadlock can happen.
This patch moved MR cache init from device configuration function to
probe function to make sure init only once.
Fixes:
9797bfcce1c9 ("net/mlx4: add new memory region support")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Signed-off-by: Xueming Li <xuemingl@mellanox.com>
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Xueming Li [Sat, 26 May 2018 13:27:35 +0000 (21:27 +0800)]
net/mlx5: fix memory region cache init
MR cache init takes place on the device configuration.
When the device is re-configured multiple times, for example when
changing the number of queue on the flight, deadlock can happen.
This patch moved MR cache init from device configuration function to
probe function to make sure init only once.
Fixes:
974f1e7ef146 ("net/mlx5: add new memory region support")
Signed-off-by: Xueming Li <xuemingl@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Adrien Mazarguil [Thu, 24 May 2018 14:36:49 +0000 (16:36 +0200)]
net/mlx5: fix crash when configure is not called
Although uncommon, applications may destroy a device immediately after
probing it without going through dev_configure() first.
This patch addresses a crash which occurs when mlx5_dev_close() calls
mlx5_mr_release() due to an uninitialized entry in the private structure.
Fixes:
974f1e7ef146 ("net/mlx5: add new memory region support")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Thomas Monjalon [Sun, 27 May 2018 21:54:47 +0000 (23:54 +0200)]
devtools: check orphan symbols in map files
The script check-symbol-maps.sh finds the symbols exported
in a map file but not referenced in the codebase.
Suggested-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Bruce Richardson [Tue, 29 May 2018 14:42:43 +0000 (16:42 +0200)]
devtools: add test script for meson builds
To simplify testing with the meson and ninja builds, we can add a script
to set up and do multiple builds. Currently this script sets up:
* clang and gcc builds
* builds using static and shared linkage for binaries (libs are always
built as both)
* a build using the lowest instruction-set level for x86 (-march=nehalem)
* cross-builds for each cross-file listed in config/arm
Each build is configured in a directory ending in *-build, and then for
the build stage, we just call ninja in each directory in turn. [i.e. we
assume every directory starting with "build-" is a meson build, which is
probably an ok assumption].
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Marko Kovacevic [Tue, 29 May 2018 11:01:24 +0000 (12:01 +0100)]
doc: add guidelines for bugzilla reference in patch
Added contribution guideline for adding tags
when sending patches that have been raised on
Bugzilla
Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Mohammad Abdul Awal [Mon, 28 May 2018 16:12:22 +0000 (17:12 +0100)]
doc: add VXLAN and NVGRE encapsulation in release notes
Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Mohammad Abdul Awal [Mon, 28 May 2018 16:12:21 +0000 (17:12 +0100)]
doc: add port representor in release notes
Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Gaetan Rivet [Mon, 28 May 2018 16:10:35 +0000 (18:10 +0200)]
doc: postpone devargs genericisation notice
Device querying and declaration has been postponed to 18.08.
Additionally, while working on the feature, some changes previously
announced won't be enacted.
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Thomas Monjalon [Mon, 28 May 2018 01:29:40 +0000 (03:29 +0200)]
version: 18.05-rc6
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Sun, 27 May 2018 22:24:35 +0000 (00:24 +0200)]
compressdev: fix export of unknown symbols
The *_callback_* functions are not implemented,
so they are removed from the export map file.
Fixes:
ed7dd94f7f66 ("compressdev: add basic device management")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Thomas Monjalon [Sun, 27 May 2018 22:24:07 +0000 (00:24 +0200)]
bus/fslmc: fix export of unknown symbol
The function dpdmai_set_tx_queue() is not implemented,
so it is removed from the export map file.
Fixes:
23e8fcb0186c ("bus/fslmc: support MC DPDMAI object")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Thomas Monjalon [Sun, 27 May 2018 22:23:35 +0000 (00:23 +0200)]
vfio: fix export of renamed symbols
The functions
- vfio_get_container_fd
- vfio_get_group_fd
- vfio_get_group_no
have been renamed to
- rte_vfio_get_container_fd
- rte_vfio_get_group_fd
- rte_vfio_get_group_num
The old names are removed from the map file.
Fixes:
964b2f3bfb07 ("vfio: export some internal functions")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Kamil Chalupnik [Thu, 24 May 2018 12:41:37 +0000 (14:41 +0200)]
baseband/turbo_sw: shorten internal buffers names
Internal buffers names have been shortened to meet ring names size
requirements after device name changed.
Fixes:
7ce00bf31bbe ("bbdev: change names of baseband devices")
Signed-off-by: Kamil Chalupnik <kamilx.chalupnik@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
Jasvinder Singh [Fri, 25 May 2018 14:15:23 +0000 (15:15 +0100)]
doc: add packet framework update in release notes
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Jasvinder Singh [Thu, 24 May 2018 11:59:43 +0000 (12:59 +0100)]
doc: update IP pipeline application guide
Update sample app user guide with ip pipeline documentation.
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Lee Daly [Thu, 24 May 2018 11:04:49 +0000 (12:04 +0100)]
doc: add compression level guide for ISA-L
This expands the ISA-L documentation to give more a detailed explanation
of the mapping between the compressdev API levels and PMD levels.
Signed-off-by: Lee Daly <lee.daly@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
Ferruh Yigit [Tue, 17 Apr 2018 13:39:49 +0000 (14:39 +0100)]
doc: announce ethdev CRC strip flag deprecation
Make CRC stripping default behavior, deprecate flag
DEV_RX_OFFLOAD_CRC_STRIP.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>