Commit Graph

17732 Commits

Author SHA1 Message Date
Thomas Monjalon
baf9fba303 doc: prepare security process for vulnerabilities
In case a vulnerability is discovered, the process to follow
is described in this document.
It has been inspired by the process of some referenced projects
and with the help of experts from Intel, RedHat, Mellanox
and the Linux Foundation.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Luca Boccassi <bluca@debian.org>
2019-05-13 22:25:21 +02:00
John McNamara
5a9d1a7241 doc: update release notes for 19.05
Fix grammar, spelling and formatting of DPDK 19.05 release notes.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2019-05-13 21:50:14 +02:00
Ori Kam
909be50a34 doc: update Mellanox guides and release notes
This patch adds some missing features to Mellanox drivers release notes.
It also updates the mlx5/mlx4 documentations.

Fixes: d85b204b5d ("doc: update release notes for Mellanox drivers")

Signed-off-by: Ori Kam <orika@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-05-13 21:09:04 +02:00
Lukasz Krakowiak
deb103d7ab doc: fix JSON interface for power sample
Updated doc for JSON sample code related to vm_power_manager
fifo interface: "command": "destroy", "command": "power".

There is no code change to go with this doc update, it is to fix
the docs to match the implementation in the code.

Fixes: a63504a90f ("examples/power: add JSON string handling")
Cc: stable@dpdk.org

Signed-off-by: Lukasz Krakowiak <lukaszx.krakowiak@intel.com>
Acked-by: David Hunt <david.hunt@intel.com>
2019-05-13 18:57:37 +02:00
Erik Gabriel Carrillo
657b6df96e doc: fix doxygen for timer API
Now that some of the symbols in the timer lib are versioned, the
Doxygen documentation that is generated is incorrect.  Group all
versioned symbols, listing the generic name first, and remove comments
for older versions of symbols.

Fixes: c0749f7096 ("timer: allow management in shared memory")

Signed-off-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
2019-05-13 18:43:10 +02:00
Wei Zhao
5e91aeef21 app/testpmd: fix offload flags after port config
There is an error in function rxtx_port_config(), which may overwrite
offloads configuration get from function launch_args_parse() when run
testpmd app. So rxtx_port_config() should do "or" for port offloads.

Fixes: d44f8a485f ("app/testpmd: enable per queue configure")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
Tested-by: Peng Yuan <yuan.peng@intel.com>
2019-05-13 17:06:27 +02:00
Viacheslav Ovsiienko
40d9f906f4 net/mlx5: fix device removal handler for multiport
IBV_EVENT_DEVICE_FATAL event is generated by the driver once for
the entire multiport Infiniband device, not for each existing ports.
The port index is zero and it causes dropping the device removal
event. We should invoke the removal event processing routine
for each port we have installed handler for.

Fixes: 028b2a28c3 ("net/mlx5: update event handler for multiport IB devices")

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-05-12 13:45:57 +02:00
Mattias Rönnblom
7e192bdb0c event/dsw: ignore scheduling type for single-link queues
The scheduling type parameter is not applicable for single link
queues. DSW would, at the time of rte_event_queue_setup(), erroneously
verify that scheduling type was one of the supported types, and
returned -ENOTSUP in case of RTE_SCHED_TYPE_ORDERED.

Fixes: 4540ee9c68 ("event/dsw: add device and queue configuration")
Cc: stable@dpdk.org

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
Acked-by: Gage Eads <gage.eads@intel.com>
2019-05-13 16:19:05 +02:00
Nikhil Rao
339677f870 eventdev: fix Rx adapter event flush
The Rx adapter flushes events only if it has BATCH_SIZE
events buffered where BATCH_SIZE is set to 32, e.g., if a
single packet is sent, it is never passed to
eventdev. Fix this issue by adding an event buffer flush
either when a Rx queue is found to be empty or the adapter service
function has processed the max number of packets for an invocation.

Bugzilla ID: 277
Fixes: 6b83f59355 ("eventdev: add event buffer flush in Rx adapter")
Cc: stable@dpdk.org

Reported-by: Matias Elo <matias.elo@nokia.com>
Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Reviewed-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
Tested-by: Matias Elo <matias.elo@nokia.com>
2019-05-13 16:14:08 +02:00
David Marchand
ee2b25c85a devtools: select patches to check with git range
Rather than default to origin/master.., it can be handy to choose the
range you want to check.

Example on a branch rebased on next-net:

Before:
$ ./devtools/checkpatches.sh
...
...
67/69 valid patches

After:
$ ./devtools/checkpatches.sh -r next-net/master..

3/3 valid patches

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-05-10 15:16:23 +02:00
Thomas Monjalon
93fa422f74 version: 19.05-rc4
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2019-05-10 01:13:20 +02:00
Lijuan Tu
f42c199f69 doc: update recommended kernel version for i40e
add recommended DPDK/kernel driver/firmware version matching list for
i40e for 19.05

Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 01:10:45 +02:00
Lijuan Tu
f93c7b9226 doc: add tested Intel platforms with Intel NICs
Add tested Intel platforms with Intel NICs to v19.05 release note.

Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 01:08:31 +02:00
Raslan Darawsheh
9203f4e9c6 doc: add tested platforms with Mellanox NICs
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
2019-05-10 01:08:29 +02:00
Yongseok Koh
22d1d1ccc3 doc: add Mellanox BlueField platform guide
Platform specific guide for Mellanox BlueField SoC is added.

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 01:08:27 +02:00
Yongseok Koh
d85b204b5d doc: update release notes for Mellanox drivers
mlx4/mlx5 release note for v19.05

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
2019-05-10 01:08:25 +02:00
Fiona Trahe
d9fa7bcc65 doc: update release notes for QAT PMDs
Added release note entry for QAT compression PMD
Clarified that previous entry was for QAT sym crypto PMD

Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 00:38:18 +02:00
Vipin Varghese
84ba341cb0 doc: remove redundant information from debug guide
Remove redundant information from section Performance issue isolation.
Re-word for section header for packet capture.

Fixes: 08db7bde16 ("doc: add guide for debug and troubleshoot")

Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 00:33:44 +02:00
Kevin Traynor
7fa1a2de36 doc: fix formatting in testpmd guide
Minor formatting error related to code block noticed when reading the doc.
Fix it and some other errors.

Fixes: c7217b9dd8 ("app/testpmd: change log level at run time")
Fixes: 3c272b280a ("app/testpmd: add commands for RSS queue region")
Fixes: e38ea44f17 ("app/testpmd: add configuration for input set")
Fixes: 08e0b3440b ("app/testpmd: add option to configure UDP tunnel port")
Fixes: e977e4199a ("app/testpmd: add commands to load/unload BPF filters")
Cc: stable@dpdk.org

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
2019-05-10 00:19:31 +02:00
David Marchand
af14b150df devtools: fix check of symbol added as stable API
The incriminated commit broke the detection of new symbols skipping the
EXPERIMENTAL step before entering a stable ABI section.
sed won't return an error, check a null output instead.

Fixes: 3630757803 ("devtools: accept experimental symbol promotion")
Cc: stable@dpdk.org

Signed-off-by: David Marchand <david.marchand@redhat.com>
2019-05-10 00:19:31 +02:00
David Marchand
d4ef40f3c6 devtools: fix symbol name in check log
We have an incorrect variable name in this log.

Fixes: 4bec48184e ("devtools: add checks for ABI symbol addition")
Cc: stable@dpdk.org

Signed-off-by: David Marchand <david.marchand@redhat.com>
2019-05-10 00:19:31 +02:00
David Marchand
f089713132 devtools: skip warning for reordered symbols
No need to shout when we are just reordering symbols in a section.

Signed-off-by: David Marchand <david.marchand@redhat.com>
2019-05-10 00:19:31 +02:00
Marcin Smoczynski
96d8ea839b examples/ipsec-secgw: fix build error log
Fix invalid indentation - extra whitespace before error directive which
is causing syntax error when no pkgconfig file for the DPDK is found and
RTE_SDK is not specified.

Fixes: d299106e8e ("examples/ipsec-secgw: add IPsec sample application")
Cc: stable@dpdk.org

Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com>
2019-05-10 00:19:31 +02:00
Erik Gabriel Carrillo
9b464145a5 doc: add timer library changes to release notes
Signed-off-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-10 00:19:31 +02:00
Erik Gabriel Carrillo
62e5c38ee4 timer: allow first subsystem init from secondary
Since memzones can be reserved from secondary processes as well as
primary processes, if the first call to the timer subsystem init
function occurs in a secondary process, we should allow it to succeed.

Fixes: c0749f7096 ("timer: allow management in shared memory")

Signed-off-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
2019-05-10 00:09:29 +02:00
Dharmik Thakkar
a55f182b77 test/hash: check freeing key with position
This patch adds a unit test for rte_hash_free_key_with_position().

Suggested-by: Linfan <zhongdahulinfan@163.com>
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
2019-05-09 22:33:15 +02:00
Dharmik Thakkar
52c7abbea9 hash: fix total entries count
In rte_hash, with current implementation, it is possible that keys
are stored at indexes greater than the number of total entries.

Currently, in rte_hash_free_key_with_position(), due to incorrect
computation of total_entries, application cannot free keys with
indexes greater than the number of total entries.

This patch fixes this incorrect computation of total_entries.

Bugzilla ID: 261
Fixes: 9d033dac7d ("hash: support no free on delete")
Cc: stable@dpdk.org

Reported-by: Linfan <zhongdahulinfan@163.com>
Suggested-by: Linfan <zhongdahulinfan@163.com>
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
2019-05-09 22:31:29 +02:00
Dharmik Thakkar
2bc731197b hash: fix position returned in free slots
Currently, in rte_hash_free_key_with_position(), the position returned
to the ring of free_slots leads to an unexpected conflict with a key
already in use.

This patch fixes incorrect position returned to the ring of free_slots.

Bugzilla ID: 261
Fixes: 9d033dac7d ("hash: support no free on delete")
Cc: stable@dpdk.org

Reported-by: Linfan <zhongdahulinfan@163.com>
Suggested-by: Linfan <zhongdahulinfan@163.com>
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
2019-05-09 22:29:36 +02:00
David Christensen
2d119c3baa test/barrier: fix for Power CPUs
The memory barrier test fails on IBM Power 9 systems.  Add additional
barriers to accommodate the weakly ordered model used on Power CPUs.

Fixes: 93da5b59af ("test: introduce memory barrier test case")
Cc: stable@dpdk.org

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-05-09 21:58:31 +02:00
David Christensen
f8f207c00f test/barrier: enlarge variables to 64 bits
Memory barrier failures can be intermittent. Increase the size of the
sum/val/iteration variables to allow tests that can run for days so that
sporadic errors can be identified.

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-05-09 21:56:22 +02:00
David Christensen
50882a1ec0 test/barrier: fix allocation check
Code tested calloc failures for pt & lpt variables
but not for the sum variable. Add a test for calloc
failure of sum.

Fixes: 93da5b59af ("test: introduce memory barrier test case")
Cc: stable@dpdk.org

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-05-09 21:56:10 +02:00
David Christensen
834e4896a5 test/barrier: fix typo in log
Change "much" to "match" in a printf.

Fixes: 93da5b59af ("test: introduce memory barrier test case")
Cc: stable@dpdk.org

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-05-09 21:56:02 +02:00
Erik Gabriel Carrillo
8650e9350d test: call timer subsystem finalize at exit
The eal_flags_autotest checks that no hugepage map files are left behind
after a process exits, which can only be the case if all allocations made
from DPDK heaps were freed back to the freelist, resulting in the
hugepage map files being unlinked automatically.  Add a call to
rte_timer_subsystem_finalize() at application exit time to release
allocations now made by the timer library.

Fixes: c0749f7096 ("timer: allow management in shared memory")

Signed-off-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
2019-05-09 21:07:55 +02:00
Mattias Rönnblom
7727ad9107 power: fix cache line alignment
The ACPI and PState CPU frequency scaling drivers used the
__rte_cache_aligned attribute without including rte_memory.h, which
turns what looks as the declaration of a cache line-aligned struct
into a non-aligned struct declaration and the definition of an
instance of the struct.

Fixes: e6c6dc0f96 ("power: add p-state driver compatibility")
Fixes: 445c6528b5 ("power: common interface for guest and host")
Cc: stable@dpdk.org

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
2019-05-09 21:07:55 +02:00
Liang Ma
3d45c3b0f5 power: fix resource leak
Fix the resource leaking issue

Coverity issue: 337668
Fixes: b60fd5f8b1 ("power: add bit for high frequency cores")

Signed-off-by: Liang Ma <liang.j.ma@intel.com>
Tested-by: David Hunt <david.hunt@intel.com>
2019-05-09 21:07:55 +02:00
Anatoly Burakov
bfbc3a5041 ipc: add warnings about correct API usage
When handling synchronous or asynchronous requests, the reply
must be sent explicitly even if the result of the operation is
an error, to avoid the other side timing out. Make note of this
in documentation explicitly.

Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2019-05-09 17:50:59 +02:00
Anatoly Burakov
3855b41500 ipc: add warnings about not using IPC with memory API
IPC and memory-related API's should not be mixed because memory
relies on IPC internally. Add explicit warnings to IPC API and
to the documentation about this.

Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2019-05-09 17:49:32 +02:00
Anatoly Burakov
ab96056d13 doc: fix typo in IPC guide
The word "synchronous" appears twice. Fix it.

Fixes: e22266669e ("doc: add IPC guide")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-05-09 17:45:30 +02:00
Aaron Conole
e377285aba ipc: unlock on failure
Coverity issue: 340076
Fixes: a2a06860b8 ("ipc: fix memory leak on request failure")
Cc: stable@dpdk.org

Signed-off-by: Aaron Conole <aconole@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Tested-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
2019-05-09 16:30:03 +02:00
Ayuj Verma
7e94c8bc7c test/crypto: return not supported instead of skipped
Currently some tests return TEST_SKIPPED/-1 when tests or params
are not supported for particular PMD because of which tests adds to
FAILED test counter in place of Skipped/Unsupported counter.

Since unsupported test is not a failure case,
replace return value TEST_SKIPPED/-1 with -ENOTSUP

- Return -ENOTSUP for unsupported tests
- add NULL check for rte_cryptodev_asym_capability_get()
- Typo correction

Signed-off-by: Ayuj Verma <ayverma@marvell.com>
Signed-off-by: Shally Verma <shallyv@marvell.com>
2019-05-09 16:21:57 +02:00
Marcin Smoczynski
b4c32d036b ipsec: fix headers install
Invalid statement is used to indicate header files to install.

Fixed the statement and reformatted recipe file.

Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2019-05-09 15:21:39 +02:00
Yongseok Koh
4d6e0352e1 doc: fix typo in mlx5 guide
Fixes: 43e9d9794c ("net/mlx5: support upstream rdma-core")
Cc: stable@dpdk.org

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2019-05-08 20:50:56 +02:00
Andrew Rybchenko
b371133628 app/testpmd: fix mbuf leak with multi-segment Tx
The last mbuf allocated in bulk is never used and never freed.

Fixes: 01b645dcff ("app/testpmd: move txonly prepare in separate function")
Fixes: 561ddcf8d0 ("app/testpmd: allocate txonly segments per bulk")

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2019-05-08 20:31:43 +02:00
Ori Kam
617ecc9000 net/mlx5: fix errno for unsupported Direct Rules
When Direct Rules API is not supported we don't set the errno.
This results in failing the function but with errno equals to zero.
The result of this is that a function that failed, is considered as
a function that worked correctly.

This commit fixes this issue by setting the errno to ENOTSUP and
returning this error when error value should be returned.

Since RDMA-CORE are returning positive errno we are also returning
positive error values.

Fixes: 4f84a19779 ("net/mlx5: add Direct Rules API")

Signed-off-by: Ori Kam <orika@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-05-08 17:29:31 +02:00
Dekel Peled
10cfa5f2d4 net/mlx5: fix release of Rx queue object
Function mlx5_rx_intr_disable() calls mlx5_rxq_ibv_get() and performs
some actions on the returned rxq_ibv.
It doesn't release the rxq_ibv when all is completed with success.

This patch adds call to mlx5_rxq_ibv_release() where it's missing.

Fixes: 09cb5b5817 ("net/mlx5: separate DPDK from verbs Rx queue objects")
Cc: stable@dpdk.org

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-05-08 17:29:31 +02:00
Yongseok Koh
4594487b78 net/mlx5: fix Multi-Packet RQ mempool name
Currently, the name of MPRQ mempool is set by
	snprintf(name, sizeof(name), "%s-mprq", dev->device->name);
For port representor, the name is duplicate of its master and failed to
create such a mempool having the same name. Port ID is used in the name
instead.

Fixes: 7d6bf6b866 ("net/mlx5: add Multi-Packet Rx support")
Cc: stable@dpdk.org

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-05-08 17:29:31 +02:00
Dekel Peled
09ba4c58e5 net/mlx5: fix init with zero Rx queue
Recent patch [1] added, at the end of mlx5_dev_configure(), a call to
mlx5_proc_priv_init(), initializing process_private data of eth_dev.
This call is not reached if PMD is started with zero Rx queues.
In this case mlx5_dev_configure() returns earlier due to the check:
	if (rxqs_n == priv->rxqs_n)
		return 0;
In such a scenario, later references to uninitialized process_private
data will result in segmentation fault.
For example see in function txq_uar_init().

This patch changes the check logic. The following code is executed
if (rxqs_n != priv->rxqs_n), and skipped otherwise.
Function mlx5_proc_priv_init() is always invoked, to ensure
process_private data is initialized.

[1] http://patches.dpdk.org/patch/52629/

Fixes: 120dc4a7dc ("net/mlx5: remove device register remap")
Cc: stable@dpdk.org

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2019-05-08 17:29:31 +02:00
Qi Zhang
c387effde8 net/iavf: enable more link speed
Enable advanced link speed mode (VIRTCHNL_VF_CAP_ADV_LINK_SPEED) so iavf
PMD can identify more link speed that reported by pf.

Cc: stable@dpdk.org

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Wei Zhao <wei.zhao1@intel.com>
2019-05-07 12:01:56 +02:00
Rosen Xu
18daca5ecc net/i40e: add device id for X710/XXV710 of ipn3ke
New PCI device ids are created to support X710/XXV710 of Intel FPGA
Programmable Acceleration card N3000, also called ipn3ke.

Signed-off-by: Rosen Xu <rosen.xu@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2019-05-07 12:01:49 +02:00
Xiao Wang
4e968cacb8 net/ice: fix EEPROM range check
The last word should not cross shadow RAM boundary.

Fixes: 68a1ab82ad ("net/ice: speed up to retrieve EEPROM")
Cc: stable@dpdk.org

Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2019-05-07 12:00:31 +02:00