Pablo de Lara [Thu, 17 Oct 2019 16:30:49 +0000 (17:30 +0100)]
crypto/aesni_mb: allow device init if no AES-NI is present
The IPSec Multi buffer library does not require AES-NI
instructions to be supported by the CPU, as it can emulate these
instructions in software (adding a big performance penalty when
using AES algorithms).
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Hemant Agrawal [Tue, 13 Aug 2019 07:20:16 +0000 (12:50 +0530)]
common/dpaax: move shared sec HW code from dpaa2_sec
The SEC HW code is being shared by multiple NXP based
drivers. It is better to place it at a common place.
Current users are:
1. DPAA2_SEC
2. DPAA_SEC
3. CAAM_JR
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Konstantin Ananyev [Fri, 27 Sep 2019 14:20:42 +0000 (15:20 +0100)]
doc: fix list of unsupported features in IPsec guide
List of unsupported features doesn't reflect latest changes.
Fixes:
cd5b860c1851 ("ipsec: support header construction")
Fixes:
2c1887fad075 ("ipsec: fix transport mode for IPv6 with extensions")
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Sunila Sahu [Wed, 16 Oct 2019 15:25:44 +0000 (20:55 +0530)]
test/crypto: support asym cases for OCTEON TX2
This patch updates asymmetric crypto unit-test application to
validate asymmetric crypto operation supported by octeontx2 PMD.
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Sunila Sahu [Wed, 16 Oct 2019 15:25:43 +0000 (20:55 +0530)]
crypto/octeontx2: support asymmetric in enqueue/dequeue
This patch adds asymmetric support in enqueue/dequeue ops.
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Kanaka Durga Kotamarthy [Wed, 16 Oct 2019 15:25:42 +0000 (20:55 +0530)]
crypto/octeontx2: add asymmetric session
This patch adds asymmetric session setup and free routines.
RSA and modexp operations are supported.
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Anoob Joseph [Wed, 16 Oct 2019 15:25:41 +0000 (20:55 +0530)]
test/crypto: add OCTEON TX2
This patch adds the OCTEON TX2 crypto validation tests.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Anoob Joseph [Wed, 16 Oct 2019 15:25:40 +0000 (20:55 +0530)]
crypto/octeontx2: add enqueue/dequeue ops
This patch adds the enqueue burst and dequeue
burst callbacks for the OCTEON TX2 crypto driver.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Ankur Dwivedi [Wed, 16 Oct 2019 15:25:39 +0000 (20:55 +0530)]
crypto/octeontx2: add session related functions
This patch adds the symmetric session related callbacks.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Anoob Joseph [Wed, 16 Oct 2019 15:25:38 +0000 (20:55 +0530)]
crypto/octeontx2: add symmetric capabilities
This patch adds the symmetric capabilities
for OCTEON TX2 crypto PMD.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Ankur Dwivedi [Wed, 16 Oct 2019 15:25:37 +0000 (20:55 +0530)]
crypto/octeontx2: add queue pair functions
This patch adds the queue pair setup and
queue pair release functions for OCTEON TX2 crypto pmd.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Ankur Dwivedi [Wed, 16 Oct 2019 15:25:36 +0000 (20:55 +0530)]
crypto/octeontx2: support control ops
This patch adds the device control functions.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Anoob Joseph [Wed, 16 Oct 2019 15:25:35 +0000 (20:55 +0530)]
crypto/octeontx2: add init sequence in probe
This patch adds the device init sequence for
OCTEON TX2 crypto device.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Anoob Joseph [Wed, 16 Oct 2019 15:25:34 +0000 (20:55 +0530)]
crypto/octeontx2: add PMD skeleton
Adding OCTEON TX2 crypto PMD skeleton.
Enabling the driver by default in common_base.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Artur Trybula [Wed, 16 Oct 2019 09:40:45 +0000 (11:40 +0200)]
test/compress: add stateless overflow recovery case
Added unit test to check out-of-space recoverable feature.
Signed-off-by: Artur Trybula <arturx.trybula@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Artur Trybula [Wed, 16 Oct 2019 09:40:44 +0000 (11:40 +0200)]
compress/qat: catch overflow for stateless compression
This patch adds out-of-space recoverable feature for stateless
compression scenario to QuickAssist compressdev driver
Signed-off-by: Artur Trybula <arturx.trybula@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Xiao Wang [Wed, 16 Oct 2019 08:06:45 +0000 (04:06 -0400)]
doc: fix typo in l2fwd-crypto guide
Unmatched double quotation mark is fixed.
Fixes:
ba7b86b1419b ("doc: add l2fwd-crypto sample app guide")
Cc: stable@dpdk.org
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Adam Dybkowski [Wed, 16 Oct 2019 12:00:30 +0000 (14:00 +0200)]
doc: add --external-mbufs option in compress perf guide
This patch documents the new compress perf tool
option --external-mbufs.
Fixes:
c02e33b03075 ("app/compress-perf: add --external-mbufs option")
Signed-off-by: Adam Dybkowski <adamx.dybkowski@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Julien Meunier [Wed, 16 Oct 2019 10:21:11 +0000 (13:21 +0300)]
cryptodev: fix checks related to device id
Each cryptodev are indexed with dev_id in the global rte_crypto_devices
variable. nb_devs is incremented / decremented each time a cryptodev is
created / deleted. The goal of nb_devs was to prevent the user to get an
invalid dev_id.
Let's imagine DPDK has configured N cryptodevs. If the cryptodev=1 is
removed at runtime, the latest cryptodev N cannot be accessible, because
nb_devs=N-1 with the current implementaion.
In order to prevent this kind of behavior, let's remove the check with
nb_devs and iterate in all the rte_crypto_devices elements: if data is
not NULL, that means a valid cryptodev is available.
Also, remove max_devs field and use RTE_CRYPTO_MAX_DEVS in order to
unify the code.
Fixes:
d11b0f30df88 ("cryptodev: introduce API and framework for crypto devices")
Cc: stable@dpdk.org
Signed-off-by: Julien Meunier <julien.meunier@nokia.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Sunila Sahu [Fri, 11 Oct 2019 13:01:36 +0000 (18:31 +0530)]
test/crypto: register octeontx to asym suite
Updated asymmetric crypto unit-test application to test
asymmetric crypto operations in octeontx PMD
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Sunila Sahu [Fri, 11 Oct 2019 13:01:35 +0000 (18:31 +0530)]
crypto/octeontx: add asymmetric enqueue/dequeue ops
Add asymmetric crypto op enqueue & dequeue routines
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Kanaka Durga Kotamarthy [Fri, 11 Oct 2019 13:01:34 +0000 (18:31 +0530)]
common/cpt: add helper functions for asymmetric crypto
Add helper functions to get meta len for asymmetric operations
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Kanaka Durga Kotamarthy [Fri, 11 Oct 2019 13:01:33 +0000 (18:31 +0530)]
crypto/octeontx: add asymmetric session operations
Add asymmetric session setup and free functions. RSA and modexp
operations are supported.
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Kanaka Durga Kotamarthy [Fri, 11 Oct 2019 13:01:32 +0000 (18:31 +0530)]
crypto/octeontx: add device type mailbox routine
Add mailbox communication to query symmetric or asymmetric device type
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Sunila Sahu <ssahu@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Michael Shamis [Tue, 1 Oct 2019 11:22:55 +0000 (14:22 +0300)]
examples/fips_validation: separate ECB and CBC init
Separate initialization of IV, PT and CT according to TDES
ECB and CBC crypto modes
Signed-off-by: Michael Shamis <michaelsh@marvell.com>
Reviewed-by: Marko Kovacevic <marko.kovacevic@intel.com>
Michael Shamis [Tue, 1 Oct 2019 11:22:54 +0000 (14:22 +0300)]
examples/fips_validation: support AES ECB
Signed-off-by: Michael Shamis <michaelsh@marvell.com>
Reviewed-by: Marko Kovacevic <marko.kovacevic@intel.com>
Michael Shamis [Tue, 1 Oct 2019 11:22:53 +0000 (14:22 +0300)]
examples/fips_validation: support TDES ECB
Signed-off-by: Michael Shamis <michaelsh@marvell.com>
Reviewed-by: Marko Kovacevic <marko.kovacevic@intel.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:30 +0000 (12:23 +0530)]
crypto/dpaa_sec: reorganize session management
The session related parameters shall be populated during
the session create only.
At the runtime on first packet, the CDB should just reference
the session data instead of re-interpreting data again.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:29 +0000 (12:23 +0530)]
test/crypto: enable SNOW3G and ZUC for dpaa
This patch add the SNOW and ZUC cipher only
and auth only test cases.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:28 +0000 (12:23 +0530)]
crypto/dpaa_sec: support SNOW3G and ZUC
This patch add support for ZUC and SNOW 3G in
non-PDCP offload mode.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:27 +0000 (12:23 +0530)]
test/crypto: add case for auth only trailer
This patch add support for case when there is auth only
header and auth only tailroom present simultaneously.
This simulates the case of IPSEC ESN.
This patch also enable the new test case for openssl and
NXP dpaa_sec and dpaa2_sec platforms.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:26 +0000 (12:23 +0530)]
test/crypto: increase cases for dpaax
dpaa_sec and dpaa2_sec testsuite are added with more
cases which are valid.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Vakul Garg [Mon, 14 Oct 2019 06:53:25 +0000 (12:23 +0530)]
crypto/dpaax_sec: support auth trailer in cipher-auth
For cases like ESN where authentication data can be after cipher
data, support for authentication trailer is required.
This patch adds support of auth-only data trailing after cipher data.
Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Vakul Garg [Mon, 14 Oct 2019 06:53:24 +0000 (12:23 +0530)]
crypto/dpaax_sec: enhance GCM descs to not skip AAD
The GCM descriptors needlessly skip auth_only_len bytes from output
buffer. Due to this, workarounds have to be made in dpseci driver code.
Also this leads to failing of one cryptodev test case for gcm. In this
patch, we change the descriptor construction and adjust dpaaX_sec
accordingly. The test_AES_GCM_auth_encrypt_SGL_out_of_place_400B_1seg
now passes.
Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Vakul Garg [Mon, 14 Oct 2019 06:53:23 +0000 (12:23 +0530)]
crypto/dpaa_sec: fix auth-cipher check for AEAD
The code shall also check aead as non auth-cipher case
Fixes:
1f14d500bce1 ("crypto/dpaa_sec: support IPsec protocol offload")
Cc: stable@dpdk.org
Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:22 +0000 (12:23 +0530)]
crypto/dpaa2_sec: fix IPv6 PDB options
HW PDB Option was being overwritten.
Fixes:
53982ba2805d ("crypto/dpaa2_sec: support IPv6 tunnel for protocol offload")
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Mon, 14 Oct 2019 06:53:21 +0000 (12:23 +0530)]
test/crypto: fix PDCP session create
session_priv_mpool should be used instead of session pool
Fixes:
d883e6e7131b ("test/crypto: add PDCP C-Plane encap cases")
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Arek Kusztal [Thu, 10 Oct 2019 11:02:39 +0000 (13:02 +0200)]
cryptodev: add asymmetric session-less
This commit adds asymmetric session-less option to
rte_crypto_asym_op. Feature flag for session-less is added
to rte_cryptodev.
Signed-off-by: Arek Kusztal <arkadiuszx.kusztal@intel.com>
Acked-by: Anoob Joseph <anoobj@marvell.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Thomas Monjalon [Wed, 9 Oct 2019 13:47:09 +0000 (15:47 +0200)]
doc: fix release notes for removed testpmd commands
The notes were not visible in the generated doc output because
of an indentation mistake.
While fixing the indentation, the formatting is improved.
Fixes:
e5db17a1e54e ("app/testpmd: remove duplicated Rx offload commands")
Cc: flavia.musatescu@intel.com
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Reviewed-by: David Marchand <david.marchand@redhat.com>
David Marchand [Tue, 22 Oct 2019 19:34:17 +0000 (21:34 +0200)]
eal: remove dead code on NUMA node detection
RTE_EAL_ALLOW_INV_SOCKET_ID had been introduced and documented as used
with xen dom0 support (dropped for some time now).
Closely looking at this, the code was changed later and ensures that the
socket id is in the [0..RTE_MAX_NUMA_NODES] range anyway.
Let's drop this dead code and the build option with it.
Fixes:
94ef2964148a ("eal/linux: fix numa node detection")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
David Christensen [Wed, 25 Sep 2019 21:42:23 +0000 (14:42 -0700)]
eal/linux: restore specific hugepage ordering for ppc
An ifdef present in eal_memory.c references "RTE_ARCH_PPC64" when
it should actually use "RTE_ARCH_PPC_64". Simple testing revealed
that both the PPC_64 and non-PPC_64 versions of the code involved
work, but the PPC_64 version of the code is retained to be
consistent with other instances in the same file where mmapped
memory is accessed in reverse order on Power platforms.
Fixes:
66cc45e293ed ("mem: replace memseg with memseg lists")
Cc: stable@dpdk.org
Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Pallantla Poornima [Tue, 10 Sep 2019 13:25:27 +0000 (14:25 +0100)]
test/mempool: add unit test cases
Added UT to cover below functions:
- rte_mempool_populate_anon(),
- rte_mempool_mem_iter(),
Those additions also cover mempool internals:
rte_mempool_memchunk_anon_free() and get_anon_size().
Signed-off-by: Pallantla Poornima <pallantlax.poornima@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Honnappa Nagarahalli [Tue, 1 Oct 2019 05:32:53 +0000 (00:32 -0500)]
test/lpm: fix measured cycles for delete
total_time needs to be reset to measure the cycles for delete API.
Fixes:
af75078fece3 ("first public release")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Tested-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Harman Kalra [Wed, 25 Sep 2019 10:43:21 +0000 (10:43 +0000)]
test/bpf: add new test cases
This patch implements following new test cases:
- test_call4: test case to verify if stack corruption occurs
across with multiple function calls.
- test_jump2: test case with a default packet in memory, parse
the packet and check if dest ip is part of a subnet.
- test_call5: test case with string data in the stack and
calling string comaprision.
Signed-off-by: Harman Kalra <hkalra@marvell.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Joyce Kong [Mon, 9 Sep 2019 05:19:00 +0000 (13:19 +0800)]
test/ring: enhance mp/mc coverage
Run ring perf test on all available cores to really verify MPMC operations.
The old way of running on a pair of cores is not enough for MPMC rings.
Suggested-by: Gavin Hu <gavin.hu@arm.com>
Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ola Liljedahl <ola.liljedahl@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Pallantla Poornima [Fri, 30 Aug 2019 14:13:15 +0000 (15:13 +0100)]
test/mbuf: add unit test on mbuf flag names
Added UT for the below functions:
- rte_get_rx_ol_flag_list,
- rte_get_tx_ol_flag_list,
- rte_get_rx_ol_flag_name,
- rte_get_tx_ol_flag_name
Signed-off-by: Pallantla Poornima <pallantlax.poornima@intel.com>
Reviewed-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Lavanya Govindarajan [Fri, 30 Aug 2019 14:13:14 +0000 (15:13 +0100)]
test/mbuf: add unit test cases
Added new unit test cases to cover the below functions:
- rte_validate_tx_offload,
- rte_pktmbuf_alloc_bulk,
- rte_pktmbuf_read,
- rte_pktmbuf_ext_shinfo_init_helper,
- rte_pktmbuf_attach_extbuf,
- rte_mbuf_ext_refcnt_read,
- rte_mbuf_ext_refcnt_update,
- rte_mbuf_ext_refcnt_set,
- rte_pktmbuf_detach_extbuf
Signed-off-by: Lavanya Govindarajan <lavanyax.govindarajan@intel.com>
Reviewed-by: Reshma Pattan <reshma.pattan@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Morten Brørup [Wed, 23 Oct 2019 10:11:11 +0000 (10:11 +0000)]
test/mbuf: add case for bulk alloc/free functions
Add unit test for functions for allocating and freeing a bulk of mbufs.
Signed-off-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Morten Brørup [Wed, 23 Oct 2019 10:11:10 +0000 (10:11 +0000)]
mbuf: add bulk free function
Add function for freeing a bulk of mbufs.
Signed-off-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Igor Ryzhov [Mon, 16 Sep 2019 10:08:28 +0000 (13:08 +0300)]
config: set KNI preempt default with meson
Same behavior as in make build system.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Mon, 7 Oct 2019 14:30:13 +0000 (15:30 +0100)]
drivers: remove duplicated compiler flags
Now that -Wextra, and other warning flags are standard in the build, remove
any duplication in driver build specifications.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Mon, 7 Oct 2019 14:30:12 +0000 (15:30 +0100)]
build: enable extra warnings with meson
While meson always adds -Wall flag to C compiles, the make build adds extra
warning flags that are not present in the meson build. This addresses that
shortcoming by adding additional warning flags to our builds. The one
omission is the -Wcast-align flag, which though present in make gcc builds,
gives a lot of warnings/errors when used with clang.
The removed warning "-Wunused-parameter" is covered by the "-Wextra"
parameter so is unnecessary.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Mon, 7 Oct 2019 14:30:11 +0000 (15:30 +0100)]
raw/ifpga: remove unneeded compiler flags
The warning disable flags for the base driver code were copy-pasted from
another source, and are actually unnecessary for this driver. Therefore
remove them.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Mon, 7 Oct 2019 14:30:10 +0000 (15:30 +0100)]
build: allow stricter fallthrough warnings
DPDK currently compiles with implicit-fallthrough=2 warning level. With gcc
-Wextra flag, the default level is 3, so some minor changes are needed to
support this in DPDK.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Wed, 25 Sep 2019 14:55:31 +0000 (15:55 +0100)]
build: support disabling drivers with meson
Add support for a new build option to turn off certain drivers. Any other
drivers which depend on the one being disabled will also be disabled with a
suitable debug message.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Bruce Richardson [Wed, 25 Sep 2019 14:55:30 +0000 (15:55 +0100)]
build: process dependencies before main build check
If we want to add support for turning off components because of missing
dependencies, then we need to check for those dependencies before we
make a determination as to whether a component should be built or not,
assuming that the component says it should be built.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Bruce Richardson [Wed, 25 Sep 2019 14:55:29 +0000 (15:55 +0100)]
build: align variable names between drivers and libs
The variable names in the library and drivers meson.build files are slighty
different with "static_deps" in one and "static_objs" in the other. Rename
to use "static_deps" in both for consistency.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Bruce Richardson [Thu, 19 Sep 2019 15:07:55 +0000 (16:07 +0100)]
build: print out dependency names for clarity
To help developers to get the correct dependency name e.g. when creating a
new example that depends on a specific component, print out the dependency
name for each lib/driver as it is processed.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Ferruh Yigit [Mon, 14 Oct 2019 10:03:50 +0000 (11:03 +0100)]
examples/vm_power: fix build
Fixes:
70febdcfd60f ("examples: check status of getting MAC address")
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Tested-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Nipun Gupta [Thu, 17 Oct 2019 08:29:04 +0000 (13:59 +0530)]
event/dpaa2: support Tx adapter
This patch adds the support of Tx adapter for DPAA2 platform
Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Nipun Gupta [Thu, 17 Oct 2019 08:29:03 +0000 (13:59 +0530)]
event/dpaa2: set priority as per DPCON device
This patch sets the priority of the dpcon dev, such that it is
within the supported range of dpcon
Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Nipun Gupta [Fri, 11 Oct 2019 13:47:57 +0000 (19:17 +0530)]
event/dpaa: support Tx adapter
This patch adds the support of Tx adapter for DPAA1 platform
Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Nipun Gupta [Fri, 11 Oct 2019 13:47:56 +0000 (19:17 +0530)]
event/dpaa: fix number of supported atomic flows
The number of atomic flows supported was not returned correctly for
DPAA driver. This patch fixes the same.
Fixes:
b08dc6430abd ("event/dpaa: add queue config get/set")
Cc: stable@dpdk.org
Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Nipun Gupta [Fri, 11 Oct 2019 13:03:06 +0000 (18:33 +0530)]
eventdev: add Tx flag for packets with same destination
This patch introduces a `flag` in the Eth TX adapter enqueue API.
Some drivers may support burst functionality only with the packets
having same destination device and queue.
The flag `RTE_EVENT_ETH_TX_ADAPTER_ENQUEUE_SAME_DEST` can be used
to indicate this so the underlying driver, for drivers to utilize
burst functionality appropriately.
Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
David Marchand [Fri, 18 Oct 2019 09:57:53 +0000 (11:57 +0200)]
rcu: fix reference to offline function
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:20 +0000 (16:12 -0500)]
rcu: update QS only when there are updates from writer
When the writer is checking the quiescent state status, it is not
deleting any entries in the data structure. This means, the readers
do not need to update their quiescent state during that period.
Readers update the quiescent state only when there are updates
available from the writer.
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:19 +0000 (16:12 -0500)]
rcu: add least acknowledged token optimization
When the rte_rcu_qsbr_check API is called, it is possible to
calculate the least valued token acknowledged by all the readers.
When the API is called next time, the readers' token counters do
not need to be scanned if the value of the token being queried is
less than the last least token acknowledged. This avoids the
cache line bounces between readers and writer.
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:18 +0000 (16:12 -0500)]
test/rcu: enhance log nomenclature
Use 'quiescent state updates' instead of just 'updates'.
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:17 +0000 (16:12 -0500)]
test/rcu: fix memory size integer truncate
Variables used to store the return value of rte_rcu_qsbr_get_memsize
in variables of type 'int' or 'uint32_t'.
While the former variables are a problem, the latter have been aligned
for consistency.
The variables are of type 'size_t' now.
Fixes:
b87089b0bb19 ("test/rcu: add API and functional tests")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:16 +0000 (16:12 -0500)]
doc: describe token and resource retention in RCU guide
After calling rte_rcu_qsbr_start API, the token and the deleted
resource need to be stored for subsequent query/free.
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:15 +0000 (16:12 -0500)]
doc: remove wrong limitation in RCU guide
There is no limitation of 1024 reader threads.
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Honnappa Nagarahalli [Tue, 8 Oct 2019 21:12:14 +0000 (16:12 -0500)]
doc: proofread RCU guide
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
David Marchand [Mon, 21 Oct 2019 15:44:54 +0000 (17:44 +0200)]
examples/ntb: fix build
lcore indexes can't be represented with uint8_t.
Seen on armv8 target:
examples/ntb/ntb_fwd.c: In function ‘cmd_quit_parsed’:
arm64-armv8a-linux-gcc/include/rte_lcore.h:296:8:
error: comparison is always true due to limited range of data type
[-Werror=type-limits]
i<RTE_MAX_LCORE; \
^
examples/ntb/ntb_fwd.c:164:2: note: in expansion of
macro ‘RTE_LCORE_FOREACH_SLAVE’
RTE_LCORE_FOREACH_SLAVE(lcore_id) {
^~~~~~~~~~~~~~~~~~~~~~~
Fixes:
5194299d6ef5 ("examples/ntb: support more functions")
Signed-off-by: David Marchand <david.marchand@redhat.com>
David Marchand [Tue, 13 Aug 2019 06:38:22 +0000 (08:38 +0200)]
devtools: fix cleanup of checkpatch temporary file
The regexp part of the cleanup routine was not updated accordingly when
a common prefix for temp files was introduced.
Set the trap handler only when required.
Fixes:
ff37ca5d3773 ("devtools: use a common prefix for temporary files")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com>
David Marchand [Mon, 12 Aug 2019 07:00:54 +0000 (09:00 +0200)]
clean bare metal support traces
Bare metal support has been gone for quite some time but we still had
some checks on system includes.
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Xiaoyun Li [Thu, 26 Sep 2019 03:20:22 +0000 (11:20 +0800)]
examples/ntb: support more functions
Support to transmit files between two systems.
Support iofwd between one ethdev and NTB device.
Support rxonly and txonly for NTB device.
Support to set forwarding mode as file-trans, txonly,
rxonly or iofwd.
Support to show/clear port stats and throughput.
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Xiaoyun Li [Thu, 26 Sep 2019 03:20:21 +0000 (11:20 +0800)]
raw/ntb: add enqueue and dequeue functions
Introduce enqueue and dequeue functions to support packet based
processing. And enable write-combining for ntb driver since it
can improve the performance a lot.
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Xiaoyun Li [Thu, 26 Sep 2019 03:20:20 +0000 (11:20 +0800)]
raw/ntb: support xstats
Add xstats support for NTB rawdev.
Support tx-packets, tx-bytes, tx-errors and
rx-packets, rx-bytes, rx-missed.
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Xiaoyun Li [Thu, 26 Sep 2019 03:20:19 +0000 (11:20 +0800)]
raw/ntb: setup queues
Setup and init NTB txq and rxq. And negotiate queue information
with the peer. If queue size and number of queues are not
consistent on both sides, return error.
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Phil Yang [Fri, 18 Oct 2019 11:21:30 +0000 (19:21 +0800)]
stack: enable lock-free implementation for aarch64
Enable both C11 atomic and non C11 atomic lock-free stack for aarch64.
Introduced a new header to reduce the ifdef clutter across generic and C11
files. The rte_stack_lf_stubs.h contains stub implementations of
__rte_stack_lf_count, __rte_stack_lf_push_elems and
__rte_stack_lf_pop_elems.
Suggested-by: Gage Eads <gage.eads@intel.com>
Suggested-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Tested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Phil Yang [Fri, 18 Oct 2019 11:21:29 +0000 (19:21 +0800)]
test/atomic: add 128-bit atomic compare exchange test
Add 128-bit atomic compare and swap test for aarch64 and x86_64.
Extend the test iteration from 10 thousand to 1 million times to test
the stability of the atomic APIs.
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Acked-by: Gage Eads <gage.eads@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
Phil Yang [Fri, 18 Oct 2019 11:21:28 +0000 (19:21 +0800)]
eal/arm64: add 128-bit atomic compare exchange
This patch adds the implementation of the 128-bit atomic compare
exchange API on aarch64. Using 64-bit 'ldxp/stxp' instructions
can perform this operation. Moreover, on the LSE atomic extension
accelerated platforms, it is implemented by 'casp' instructions for
better performance.
Since the '__ARM_FEATURE_ATOMICS' flag only supports GCC-9, this
patch adds a new config flag 'RTE_ARM_FEATURE_ATOMICS' to enable
the 'cas' version on older version compilers.
For octeontx2, we make sure that the lse (and other) extensions are
enabled even if the compiler does not know of the octeontx2 target
cpu.
Since direct x0 register used in the code and cas_op_name() and
rte_atomic128_cmp_exchange() is inline function, based on parent
function load, it may corrupt x0 register aka break aarch64 ABI.
Define CAS operations as rte_noinline functions to avoid an ABI
break [1].
1: https://git.dpdk.org/dpdk/commit/?id=
5b40ec6b9662
Suggested-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Tested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Jim Harris [Mon, 7 Oct 2019 15:28:21 +0000 (08:28 -0700)]
eal: calibrate TSC only in primary process
This ensures secondary processes never have to calculate the TSC rate
themselves, which can be noticeable in VMs that don't have access to
arch-specific detection mechanism (such as CPUID leaf 0x15 or MSR 0xCE
on x86).
Since rte_mem_config is now internal to the EAL library, we can add
tsc_hz without ABI breakage concerns.
Reduces rte_eal_init() execution time in a secondary process from 165ms
to 66ms on my test system.
Signed-off-by: Jim Harris <james.r.harris@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Ruifeng Wang [Mon, 9 Sep 2019 13:51:42 +0000 (21:51 +0800)]
rcu: fix spurious thread unregister
Thread unregister returns success while unregister not been performed.
This is due to incorrect thread registration status check.
Fix this issue by correcting bitmap check.
Fixes:
64994b56cfd7 ("rcu: add RCU library supporting QSBR mechanism")
Cc: stable@dpdk.org
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Nikhil Rao [Mon, 16 Sep 2019 10:01:02 +0000 (15:31 +0530)]
service: avoid false sharing on core state
For a valid service, the core mask of the service
is checked against the current core and the corresponding
entry in the active_on_lcore array is set or reset.
Upto 8 cores share the same cache line for their
service active_on_lcore array entries since each entry is a uint8_t.
Some number of these entries also share the cache line with
the internal_flags member of struct rte_service_spec_impl,
hence this false sharing also makes the service_valid() check
expensive.
Eliminate false sharing by moving the active_on_lcore array to
a per-core data structure. The array is now indexed by service id.
Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Acked-by: Gage Eads <gage.eads@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Jim Harris [Mon, 7 Oct 2019 15:40:05 +0000 (08:40 -0700)]
timer: remove useless check on x86 TSC reliability
This code was added 7+ years ago in
commit
fb022b85bae4 ("timer: check TSC reliability")
presumably when variant TSCs were still somewhat common.
But this code doesn't do anything except print a warning,
and the warning doesn't give any kind of advice to the user,
so let's just remove it.
While the warning has no functional meaning, the /proc/cpuinfo
parsing consumes a non-trivial amount of time which is especially
noticeable in secondary processes.
On my test system, it consumes 21ms out of the 66ms total execution
time for rte_eal_init() in a secondary process.
Signed-off-by: Jim Harris <james.r.harris@intel.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Hemant Agrawal [Fri, 27 Sep 2019 09:04:28 +0000 (14:34 +0530)]
eal/ppc: add SPDX license tag
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: David Christensen <drc@linux.vnet.ibm.com>
David Christensen [Tue, 15 Oct 2019 21:16:14 +0000 (14:16 -0700)]
eal/ppc: fix 64-bit atomic exchange operation
The rte_atomic64_exchange operation for ppc_64 incorrectly linked
back to a 32 bit generic operation (__atomic_exchange_4) rather than
the 64 bit generic operation (__atomic_exchange_8). As a result,
applications that used rte_eth_link_get_nowait() would only receive
the link speed, they would not receive the link state, link duplex,
or link autoneg properties.
Fixes:
ff2863570fcc ("eal: introduce atomic exchange operation")
Cc: stable@dpdk.org
Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Stephen Hemminger [Tue, 8 Oct 2019 16:33:49 +0000 (09:33 -0700)]
mbuf: add a copy routine
This is a commonly used operation that surprisingly the
DPDK has not supported. The new rte_pktmbuf_copy does a
deep copy of packet. This is a complete copy including
meta-data.
It handles the case where the source mbuf comes from a pool
with larger data area than the destination pool. The routine
also has options for skipping data, or truncating at a fixed
length.
This patch also introduces internal inline to copy the
metadata fields of mbuf.
Add a test for this new function, based of the clone tests.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Stephen Hemminger [Tue, 8 Oct 2019 16:33:48 +0000 (09:33 -0700)]
mbuf: deinline clone function
Cloning mbufs requires allocations and iteration
and therefore should not be an inline.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Stephen Hemminger [Tue, 8 Oct 2019 16:33:47 +0000 (09:33 -0700)]
mbuf: deinline linearize function
This copy part of this function is too big to be put inline.
The places it is used are only in special exception paths
where a highly fragmented mbuf arrives at a device that can't handle it.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Stephen Hemminger [Tue, 8 Oct 2019 16:33:46 +0000 (09:33 -0700)]
test/mbuf: fix forged mbuf in clone test
The test for cloning changed mbuf would generate an mbuf whose length
and segments count were invalid.
This would cause a crash if test was run with mbuf debugging enabled.
Fixes:
4ccd2bb3a9e2 ("app/test: enhance mbuf refcnt check")
Fixes:
af75078fece3 ("first public release")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Olivier Matz [Tue, 8 Oct 2019 09:34:06 +0000 (11:34 +0200)]
mempool: clarify default populate function
No functional change.
Clarify the populate function to make future changes easier to
understand.
Rename the variables:
- to avoid negation in the name
- to have more understandable names
Remove useless variable (no_pageshift is equivalent to pg_sz == 0).
Remove duplicate affectation of "external" variable.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
Xiaolong Ye [Mon, 12 Aug 2019 03:06:30 +0000 (11:06 +0800)]
kni: support allmulticast mode set
This patch adds support to allow users enable/disable allmulticast mode for
kni interface.
This requirement comes from bugzilla 312, more details can refer to:
https://bugs.dpdk.org/show_bug.cgi?id=312
Bugzilla ID: 312
Signed-off-by: Xiaolong Ye <xiaolong.ye@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Stephen Hemminger [Wed, 21 Aug 2019 09:12:52 +0000 (10:12 +0100)]
service: use log for error messages
EAL should always use rte_log instead of putting errors to
stderr (which maybe redirected to /dev/null in a daemon).
Also checks for null before rte_free are unnecessary.
Minor code consistency improvements.
Fixes:
21698354c832 ("service: introduce service cores concept")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Arnon Warshavsky [Mon, 19 Aug 2019 13:57:44 +0000 (16:57 +0300)]
eal: fix mapping leak in secondary process
Have rte_eal_config_reattach clean up the mapped address which is a valid
address but not the one intended.
Coverity issue: 343439
Fixes:
4e8854ae89fa ("eal: do not panic on shared memory init")
Fixes:
b149a7064261 ("eal/freebsd: add config reattach in secondary process")
Cc: stable@dpdk.org
Signed-off-by: Arnon Warshavsky <arnon@qwilt.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Jim Harris [Fri, 16 Aug 2019 12:13:42 +0000 (05:13 -0700)]
vfio: fix leak with multiprocess
The code checks both rte_mp_request_sync() return code and that the number
of messages in the reply equals 1. If rte_mp_request_sync() succeeds but
there was more than one message, those messages would get leaked.
Found via code review by Anatoly Burakov of patches that used the vhost
code as a template for using rte_mp_request_sync().
Fixes:
83a73c5fef66 ("vfio: use generic multi-process channel")
Cc: stable@dpdk.org
Reported-by: Anatoly Burakov <anatoly.burakov@intel.com>
Signed-off-by: Jim Harris <james.r.harris@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Christian Ehrhardt [Thu, 29 Aug 2019 15:30:03 +0000 (17:30 +0200)]
build: avoid overlinking
A while ago telemetry was added in
57ae0ec6 and it also added as-needed
to config/meson.build. This seems no more needed these days as due to other
build changes the ordering in buildlogs is:
[...] -lrte_telemetry [...] -Wl,--no-as-needed [...]
Which means telemetry no more benefits from --no-as-needed anyway.
Overlinking problems get triggered by the meson generated pkgconfig which
will have:
[...] -Wl,--no-as-needed <somelibsusedbydpdk>
This will overlink <somelibs> and in addition anything that follows
as it also doesn't wrap back to --as-needed. So if a projects includes
dpdk libs + <other> it will also consider <other> with --no-as-needed.
Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/
1841759
Fixes:
57ae0ec62620 ("build: add dependency on telemetry to apps with meson")
Cc: stable@dpdk.org
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Jerin Jacob [Wed, 14 Aug 2019 13:09:53 +0000 (18:39 +0530)]
bpf: hide internal program argument type
RTE_BPF_ARG_PTR_STACK is used as internal program
arg type. Rename to RTE_BPF_ARG_RESERVED to
avoid exposing internal program type.
Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Tested-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Jerin Jacob [Tue, 3 Sep 2019 10:59:38 +0000 (16:29 +0530)]
bpf/arm: add branch operation
Add branch and call operations.
jump_offset_* APIs used for finding the relative offset
to jump w.r.t current eBPF program PC.
Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>