Commit Graph

16658 Commits

Author SHA1 Message Date
Andrew Rybchenko
4e8938dd1f net/sfc: remove RxQ control from shared RxQ info
libefx is not multi-process aware and all related structures
should be moved to primary process only.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
dbe26517cd net/sfc: remove unnecessary functions to get TxQ index
TxQ index is stored in generic datapath queue structure.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
9f25da76b9 net/sfc: remove unnecessary functions to get RxQ index
RxQ index is stored in generic datapath queue structure.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
128da6924a net/sfc: support RSS RETA and hash config get in secondary
RSS RETA query and hash configuration get functions use shared
adapter data only. No libefx functions are called.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
3cf4b9c24b net/sfc: support Tx descriptor status in secondary process
If Tx datapath supports multi-process, secondary process should be
able to use Tx descriptor status API.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
42ce2521a8 net/sfc: move datapath TxQ handle to shared TxQ info
If datapath supports multi-process, it should be possible to get
its TxQ structure by the queue index.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
561508da06 net/sfc: move TxQ state to multi-process shared location
Secondary process needs to know TxQ state.
TxQ control structure will become primary process private.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
b76e1b2c91 net/sfc: support Rx descriptor status in secondary process
If Rx datapath supports multi-process, secondary process should be
able to use Rx descriptor status and related API.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
bfea01bc1e net/sfc: move datapath RxQ handle to shared RxQ info
If datapath supports multi-process, it should be possible to get
its RxQ structure by the queue index.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
2e42d78ddd net/sfc: move RxQ state to multi-process shared location
Secondary process needs to know RxQ state.
RxQ control structure will become primary process private.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
f52fa243fd net/sfc: move main log type to process private data
Dynamic log type value may differ in primary and secondary processes.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
5dec95e36d net/sfc: move datapath ops pointers to process private data
The change is required to support datapath-dependent device operations
for secondary process. It is just a step in the direction.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
c7b57f0075 net/sfc: make it simpler to change datapath ops location
Rx and Tx datapath ops should be stored in process private
data since these structures are located in the data section
(not allocated from shared memory).

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
768629c69a net/sfc: remove wrappers around Rx descriptor count and done
These wrappers are used in single place and just complicate reading
and understanding if these ops could be supported in secondary process.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
b57870f2ab net/sfc: avoid usage of TxQ control structure in info get
TxQ control structure contains primary process only data and will become
primary process only. TxQ info get is supported in secondary process.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
5befcecbe0 net/sfc: avoid usage of RxQ control structure in info get
RxQ control structure contains primary process only data and will
become primary process only. RxQ info get is supported in secondary
process.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
e2c3639abf net/sfc: fix logging from secondary process
Dynamic log type value may differ in different processes.

Fixes: f28ede500c ("net/sfc: support multi-process")
Cc: stable@dpdk.org

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Andrew Rybchenko
bd6e510658 net/sfc: remove control path logging from Rx queue count
Rx queue count may be used from data core and it should not
generate control path logs.

Fixes: 04aa6b9c5f ("net/sfc: get RxQ pending descriptors count")
Cc: stable@dpdk.org

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Ivan Malov
5e48db8c53 net/sfc: log port ID as 16-bit unsigned integer on panic
Fixes: f8244c6399 ("ethdev: increase port id range")
Cc: stable@dpdk.org

Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
2019-02-07 16:06:30 +01:00
Hari Kumar Vemula
5be3b40fea net/bonding: fix values of descriptor limits
test_create_bonded_device is failing due to improper initialisation in
bonded device configuration. Which leads to crash while setting up
queues.

The value of nb_rx_desc is checked if it is not in range of rx_desc_lim
of bonded device which fails.
This is due to "rx_desc_lim" is set to 0 as default value of bonded
device during bond_alloc().
Hence nb_rx_desc (1024) is > 0 and test fails.

Fix is to set the default values of rx_desc_lim of bonded device to
appropriate value.
Receive the values from slaves configuration like done for other
existing slave configuration

Fixes: 2efb58cbab ("bond: new link bonding library")
Cc: stable@dpdk.org

Signed-off-by: Hari Kumar Vemula <hari.kumarx.vemula@intel.com>
Acked-by: Chas Williams <chas3@att.com>
2019-02-07 14:33:10 +01:00
Qi Zhang
9b3d42207c net/pcap: fix memory leak
Fix potential memory leak due to kvlist not be freed.

Fixes: 0d0dd2d9d8 ("net/pcap: enable data path for secondary process")
Cc: stable@dpdk.org

Reported-by: Gage Eads <gage.eads@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
2019-02-07 13:28:53 +01:00
Viacheslav Ovsiienko
62e8a5a8c8 app/testpmd: add TOS and TTL fields to VXLAN encapsulation
The new testpmd set vxlan-tos-ttl command is added. It
allows to specify tos and tll fields for encapsulation IP
header.

IPv4 VXLAN outer header:

  testpmd> set vxlan-tos-ttl ip-version ipv4 vni 4 udp-src 4
           udp-dst 4 ip-tos 0 ip-ttl 255 ip-src 127.0.0.1
           ip-dst 128.0.0.1 eth-src 11:11:11:11:11:11
           eth-dst 22:22:22:22:22:22

IPv6 VXLAN outer header:
  testpmd> set vxlan-tos-ttl ip-version ipv6 vni 4 udp-src 4
           udp-dst 4 ip-tos 0 ip-ttl 255 ::1 ip-dst ::2222
           eth-src 11:11:11:11:11:11 eth-dst
           22:22:22:22:22:22

Note: ip-ttl parameter corresponds the nop_limits field for IPv6.

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Ori Kam <orika@mellanox.com>
2019-02-07 12:59:17 +01:00
Vladimir Medvedkin
1b421d195c hash: replace license text with SPDX tag for Toeplitz algo
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
2019-02-06 22:08:04 +01:00
Vladimir Medvedkin
854ec5a83c maintainers: claim co-maintainership of LPM library
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
2019-02-06 11:45:17 +01:00
Thomas Monjalon
cae0d722d6 version: 19.05-rc0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-02-06 11:20:06 +01:00
Thomas Monjalon
8b937bae24 version: 19.02.0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2019-02-01 15:25:17 +01:00
John McNamara
bf9a90e2b5 doc: update release notes for 19.02
Fix grammar, spelling and formatting of DPDK 19.02 release notes.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2019-02-01 15:22:16 +01:00
Reshma Pattan
9f9a93f15b doc: announce replacement of meter colors
Added deprecation notice to replace rte_meter_color
with rte_color.

Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
Acked-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
2019-02-01 14:13:41 +01:00
Nikhil Rao
594ecbd1e9 doc: announce parameter change of a service API function
rte_service_attr_get() is passed a uint32_t * to retrieve
an attribute value, this will be changed to uin64_t * as per
patch posted at http://patchwork.dpdk.org/patch/49968/

Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: David Marchand <david.marchand@redhat.com>
2019-02-01 14:06:48 +01:00
Bruce Richardson
2eb37d7de4 doc: announce meson version upgrade
Add a notice in the deprecation section of the release notes to call out
the fact that the minimum supported meson version for DPDK will change
from 19.05 onwards.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Timothy Redaelli <tredaelli@redhat.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-02-01 12:10:38 +01:00
Bruce Richardson
7c383daae0 doc: remove note about meson being experimental
At this stage, meson builds are widely supported for DPDK, and so
the build system should be no longer called out as experimental.
NOTE: this does not imply it's the primary build system, just that
it's safe to use for day-to-day work and for packaging if so
desired.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2019-02-01 11:57:07 +01:00
Anatoly Burakov
e39d9b6366 doc: clarify libnuma requirement for NUMA systems
Since 18.05, libnuma is pretty much required on Linux when using
non-legacy mode, because without it, we cannot know where our
hugepages are located [1].

In legacy mode, libnuma is not required because we can still sort
pages by sockets, as we use pagemap lookup method to figure out
socket ID's for pages.

So, document libnuma as required for NUMA systems and non-legacy
mode.

[1] https://mails.dpdk.org/archives/dev/2018-December/120490.html

Fixes: 6b42f75632 ("eal: enable non-legacy memory mode")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
2019-02-01 11:50:33 +01:00
Declan Doherty
0763ec43db maintainers: resign from maintainership of link bonding
I've been unable to dedicate enough time to actively help in the
maintainership of the link bonding PMD, and as Chas is now actively
maintaining this PMD, I'm removing my name against it in the
MAINTAINERS file.

Signed-off-by: Declan Doherty <declan.doherty@intel.com>
2019-01-31 18:41:07 +01:00
Thomas Monjalon
20789d4dfd doc: improve Mellanox bifurcated model description
In the howto guide about flow bifurcation, the Mellanox case
(which does not require specific details) was missing in the landscape.

In the Linux drivers guide, it was not clear that the flow bifurcation
is performed in the NIC hardware.

References to flow isolated mode are also inserted in those contexts.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Thomas Monjalon
0e0fb9431c doc: add references to flow isolated mode in NICs guide
Some drivers (mlx, mvpp2, sfc) support the flow isolated mode,
but the feature was not advertised.
A reference to the feature description is added for each driver.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Thomas Monjalon
610f8f441a doc: remove useless anchor for flow API guide
A doc page (.rst file) can be referenced with :doc: syntax
instead of :ref: to .. anchor.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Yongseok Koh
6f04df4979 doc: add release notes for mlx5
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Yongseok Koh
709bd34c90 doc: add Mellanox EN support in mlx5 guide
Mellanox EN package is supported along with Mellanox OFED. Mellanox EN is
distriubuted for Ethernet users.

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Yongseok Koh
f06a2d4fb9 doc: add mlx5 note for Bluefield build configuration
Fixes: d14e4e976f ("config: add Mellanox BlueField armv8 SoC")
Cc: stable@dpdk.org

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-31 18:41:07 +01:00
Viacheslav Ovsiienko
c9e462d17b net/mlx5: fix build for armv8
Added <rte_cycles.h> inclusion, was not included on some
building setups (armv8).

Fixes: 71ab2d6472 ("net/mlx5: fix VXLAN port registration race condition")
Cc: stable@dpdk.org

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-01-30 11:08:35 +01:00
Thomas Monjalon
a2f9c0d417 version: 19.02-rc4
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2019-01-28 02:53:53 +01:00
Raslan Darawsheh
653a71e59b doc: add tested platforms with Mellanox NICs
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
2019-01-28 02:53:53 +01:00
Lijuan Tu
f173fd74c0 doc: add tested Intel platforms with Intel NICs
Add tested Intel platforms with Intel NICs to v19.02 release note.

Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
2019-01-28 02:53:53 +01:00
Rami Rosen
63a71926e9 doc: add dependency for PDF in contributing guide
There is a missing depenency for building docs with "make doc-guides-pdf".
This causes it to break with "make[3]: latexmk: Command not found". This
was observed and reported in https://bugs.dpdk.org/show_bug.cgi?id=182
This patch fixes this issue by adding the latexmk package dependency in
sub-section 4.3.1 of the contributing guide ("Dependencies").

Bugzilla ID: 182
Cc: stable@dpdk.org

Signed-off-by: Rami Rosen <ramirose@gmail.com>
2019-01-28 01:59:01 +01:00
Luca Boccassi
ccee5d18a4 build: mention -march in pkg-config description
Applications need to at least match DPDK's -march option to build
successfully due to some static inline functions in the public headers.

This might cause problems, especially in distributions, so add a note
in the pkg-config description.

Fixes: a25a650be5 ("build: add infrastructure for meson and ninja builds")
Cc: stable@dpdk.org

Signed-off-by: Luca Boccassi <bluca@debian.org>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2019-01-28 01:49:38 +01:00
Bruce Richardson
8a9a4eaf83 usertools: make telemetry script executable
Add #! line to the top of the script and mark it as executable so it can
be run directly rather than having to pass it to python interpreter.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2019-01-28 01:47:46 +01:00
Congwen Zhang
1459d335d0 lpm: remove recursively included header file
includes itself: rte_lpm.h -> rte_lpm_sse.h -> rte_lpm.h
includes itself: rte_lpm.h -> rte_lpm_neon.h -> rte_lpm.h

Signed-off-by: Congwen Zhang <zhang.congwen@zte.com.cn>
2019-01-28 01:47:23 +01:00
Ed Czeck
14ff7fb97e mbuf: fix struct initialization with C++
g++ reports "error: missing initializer for member"

Fixes: 5d3f721009 ("mbuf: implement generic format for sched field")

Signed-off-by: Ed Czeck <ed.czeck@atomicrules.com>
2019-01-28 00:57:57 +01:00
Fiona Trahe
89da5e006f crypto/qat: fix digest in wireless auth case
When operation calls for auth (digest generation), followed by
encryption of both data plus digest, the digest-in-buffer
flag must be set for QAT.

Fixes: 39e0bee48e ("crypto/qat: rework request builder for performance")
Cc: stable@dpdk.org

Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Arek Kusztal <arkadiuszx.kusztal@intel.com>
2019-01-27 23:48:34 +01:00
Rafal Kozik
61e093398f doc: add instructions for WC in ENAv2
ENAv2 hardware provides Low Latency Queue v2 (LLQv2). It needs kernel
PCI driver to support write combining (WC). This patch add information
how to use it with igb_uio and vfio-pci drivers.

Signed-off-by: Rafal Kozik <rk@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
2019-01-27 23:38:37 +01:00