Vladimir Medvedkin [Tue, 27 Oct 2020 15:11:24 +0000 (15:11 +0000)]
fib: add lookup runtime selection
Add type argument to dir24_8_get_lookup_fn()
Now it supports 3 different lookup implementations:
RTE_FIB_LOOKUP_DIR24_8_SCALAR_MACRO
RTE_FIB_LOOKUP_DIR24_8_SCALAR_INLINE
RTE_FIB_LOOKUP_DIR24_8_SCALAR_UNI
Add new rte_fib_select_lookup() - user can change lookup
function type runtime.
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Vladimir Medvedkin [Tue, 27 Oct 2020 15:11:31 +0000 (15:11 +0000)]
fib: remove maximum type enums
FIB type RTE_FIB_TYPE_MAX is used only for sanity checks,
remove it to prevent applications start using it.
The same is for FIB6's RTE_FIB6_TYPE_MAX.
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
David Marchand [Thu, 22 Oct 2020 08:08:10 +0000 (10:08 +0200)]
service: separate statistics dump and reset
No functional change intended.
service_dump_calls_per_lcore() was always called with a 0 reset flag.
service_dump_one() was called with either a 0 reset flag or a NULL
FILE pointer.
We can split the code for readability sake.
Note: there is no path to resetting calls_per_service[], this is left as
is.
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Ray Kinsella [Mon, 26 Oct 2020 19:31:14 +0000 (19:31 +0000)]
doc: update ABI version references
Updated references to abi versions in the contributors guide.
Fixed an inaccurate reference to a symbol in the policy.
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Reviewed-by: David Marchand <david.marchand@redhat.com>
David Marchand [Fri, 23 Oct 2020 07:44:51 +0000 (09:44 +0200)]
app/procinfo: clean old build macro
When merging this series after Bruce changes on build macros, an old macro
usage has been re-introduced.
Fixes:
d82d6ac64338 ("app/procinfo: add crypto security context info")
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Ruifeng Wang [Fri, 23 Oct 2020 09:38:18 +0000 (11:38 +0200)]
lpm: hide internal data
Fields except tbl24 and tbl8 in rte_lpm structure have no
need to be exposed to the user.
Hide the unneeded exposure of structure fields for better
ABI maintainability.
Suggested-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Signed-off-by: David Marchand <david.marchand@redhat.com>
Ruifeng Wang [Fri, 23 Oct 2020 09:38:17 +0000 (11:38 +0200)]
lpm: fix free of data structure
The container structure should be freed instead of rte_lpm structure
after wrapping rte_lpm into internal structure __rte_lpm.
Fixes:
8a9f8564e9f9 ("lpm: implement RCU rule reclamation")
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Thomas Monjalon [Sat, 24 Oct 2020 16:36:19 +0000 (18:36 +0200)]
maintainers: improve coverage of arch-specific files
The sub-directories of config/ are maintained by
different architecture maintainers.
Some wildcards are used to describe the lib, drivers and app files
which are specific to some architectures.
The EAL Arm files have split responsibilities depending on 32/64 suffix,
and the common files are shared between Armv7 and Armv8 sections.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Reviewed-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Dharmik Thakkar [Wed, 21 Oct 2020 22:50:06 +0000 (17:50 -0500)]
test/hash: add RCU tests
Add functional and performance tests for the integrated RCU QSBR.
Suggested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
Dharmik Thakkar [Wed, 21 Oct 2020 22:50:05 +0000 (17:50 -0500)]
test/hash: use C11 atomics in lock-free perf test
Replace rte_atomic APIs with C11 atomic APIs in
test_hash_readwrite_lf_perf.c
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
Dharmik Thakkar [Wed, 21 Oct 2020 22:50:04 +0000 (17:50 -0500)]
hash: implement RCU resources reclamation
Currently, users have to use external RCU mechanisms to free resources
when using lock free hash algorithm.
Integrate RCU QSBR process to make it easier for the applications to use
lock free algorithm.
Refer to RCU documentation to understand various aspects of
integrating RCU library into other libraries.
Suggested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
Dharmik Thakkar [Wed, 21 Oct 2020 22:50:03 +0000 (17:50 -0500)]
rcu: build on Windows
Build the lib for Windows.
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Tested-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Tested-by: Pallavi Kadam <pallavi.kadam@intel.com>
Thomas Monjalon [Thu, 22 Oct 2020 17:30:09 +0000 (19:30 +0200)]
doc: remove references to make from known issues
The config options CONFIG_RTE_* are simple RTE_* defines with meson.
Now that make support is dropped, update the HPET config reference.
The comment about the AVX512 config option is not relevant anymore.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Thu, 22 Oct 2020 19:22:45 +0000 (21:22 +0200)]
remove config prefix used with make
The config options CONFIG_RTE_* are simple RTE_* defines with meson.
Now that make support is dropped, update the names in logs and comments.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Acked-by: Haiyue Wang <haiyue.wang@intel.com>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Thu, 22 Oct 2020 17:36:21 +0000 (19:36 +0200)]
mem: fix config name in error logs
When introducing the new option CONFIG_RTE_MAX_MEM_MB_PER_TYPE,
some logs were referencing a wrong name: CONFIG_RTE_MAX_MEM_PER_TYPE.
Fixes:
66cc45e293ed ("mem: replace memseg with memseg lists")
Cc: stable@dpdk.org
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Thu, 22 Oct 2020 17:37:34 +0000 (19:37 +0200)]
eal: remove comment about old partition option
The main initialization function (rte_eal_init) has documentation
about a feature from another era: memory partition.
Curiously, this lost treasure is found only now,
suggesting there may be other interesting things to discover in the doc.
To all aspiring Indiana Jones: the hunt is open!
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: David Marchand <david.marchand@redhat.com>
Yogesh Jangra [Thu, 22 Oct 2020 11:01:52 +0000 (07:01 -0400)]
examples/pipeline: fix help command
This patch has the changes to list all supported commands and fix
supported commands help details.
Fixes:
5074e1d55107 ("examples/pipeline: add configuration commands")
Signed-off-by: Yogesh Jangra <yogesh.jangra@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Yunjian Wang [Wed, 21 Oct 2020 11:19:49 +0000 (19:19 +0800)]
eal: report duplicate device event callback
We should return an error value, when the callback is already exist.
Fixes:
a753e53d517b ("eal: add device event monitor framework")
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Yunjian Wang [Wed, 21 Oct 2020 11:19:23 +0000 (19:19 +0800)]
eal: return errors on device event callback unregister
Fix return value, using -EAGAIN instead of 0 when the callback is busy
and using -ENOENT instead of 0 when the callback is not found.
Fixes:
a753e53d517b ("eal: add device event monitor framework")
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Acked-by: Jeff Guo <jia.guo@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Yunjian Wang [Wed, 21 Oct 2020 11:19:03 +0000 (19:19 +0800)]
eal: fix leak on device event callback unregister
The event_cb->dev_name is not freed when freeing event_cb,
and this causes a memory leak.
Fixes:
a753e53d517b ("eal: add device event monitor framework")
Cc: stable@dpdk.org
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Acked-by: Jeff Guo <jia.guo@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Ibtisam Tariq [Mon, 13 Jul 2020 09:57:30 +0000 (09:57 +0000)]
examples/ipsec-secgw: use POSIX network address conversion
inet_pton4 and inet_pton6 was reimplemented. Replace implementation of
inet_pton4 and inet_pton6 with libc inet_pton function
Bugzilla ID: 365
Fixes:
0d547ed03717 ("examples/ipsec-secgw: support configuration file")
Reported-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ibtisam Tariq <ibtisam.tariq@emumba.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Ibtisam Tariq [Mon, 13 Jul 2020 09:57:29 +0000 (09:57 +0000)]
examples/ip_pipeline: use POSIX network address conversion
inet_pton4 and inet_pton6 was reimplemented. Replacing implementation of
inet_pton4 and inet_pton6 with libc inet_pton function
Bugzilla ID: 365
Fixes:
ed7a0490f7e2 ("examples/ip_pipeline: add string parsing helpers")
Reported-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ibtisam Tariq <ibtisam.tariq@emumba.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Ibtisam Tariq [Mon, 13 Jul 2020 09:57:28 +0000 (09:57 +0000)]
net/softnic: use POSIX network address conversion
inet_pton4 and inet_pton6 was reimplemented. Replace implementation of
inet_pton4 and inet_pton6 with libc inet_pton function
Bugzilla ID: 365
Fixes:
31ce8d888625 ("net/softnic: add command interface")
Reported-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ibtisam Tariq <ibtisam.tariq@emumba.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Ruifeng Wang [Wed, 14 Oct 2020 09:24:14 +0000 (17:24 +0800)]
doc: update guide for armv8 crypto
Added guide about building by using meson.
Also added the command to create virtual device.
Suggested-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Kevin Laatz [Wed, 21 Oct 2020 08:17:24 +0000 (09:17 +0100)]
doc: update patch cheatsheet to use meson
With 'make' being removed, the patch cheatsheet needs to be updated to
remove any references to 'make'. These references have been replaced with
meson alternatives in this patch.
Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:23 +0000 (09:17 +0100)]
doc: add to release notes to reflect removal of make
Added an entry to describe the removal of the Make build system to the
release notes for 20.11.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:22 +0000 (09:17 +0100)]
doc: remove references to make from contributing guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Signed-off-by: Louise Kilheeney <louise.kilheeney@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:21 +0000 (09:17 +0100)]
doc: remove reference to make from tools guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Acked-by: Nicolas Chautru <nicolas.chautru@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:20 +0000 (09:17 +0100)]
doc: remove references to make from apps guide
While make has been deprecated for DPDK, it's still applicable for
some example apps to be built standalone, this patch adjusts the
guides to take that into consideration.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Nicolas Chautru <nicolas.chautru@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:19 +0000 (09:17 +0100)]
doc: remove references to make from rawdevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Rosen Xu <rosen.xu@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:18 +0000 (09:17 +0100)]
doc: remove references to make from eventdevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:17 +0000 (09:17 +0100)]
doc: remove references to make from compressdevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Acked-by: Lee Daly <lee.daly@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:16 +0000 (09:17 +0100)]
doc: remove references to make from cryptodevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Ciara Power [Wed, 21 Oct 2020 08:17:15 +0000 (09:17 +0100)]
doc: remove references to make from bbdevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:14 +0000 (09:17 +0100)]
doc: remove references to make from vdpadevs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Matan Azrad <matan@nvidia.com>
Ciara Power [Wed, 21 Oct 2020 08:17:13 +0000 (09:17 +0100)]
doc: remove references to make from NICs guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Igor Russkikh <irusskikh@marvell.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Reviewed-by: Harman Kalra <hkalra@marvell.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Acked-by: Hyong Youb Kim <hyonkim@cisco.com>
Ciara Power [Wed, 21 Oct 2020 08:17:12 +0000 (09:17 +0100)]
doc: remove references to make from mempool guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Wed, 21 Oct 2020 08:17:11 +0000 (09:17 +0100)]
doc: remove references to make from platforms guide
Make is no longer supported for compiling DPDK, references are now
removed in the documentation.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Signed-off-by: Harman Kalra <hkalra@marvell.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
Yunjian Wang [Tue, 29 Sep 2020 03:31:35 +0000 (11:31 +0800)]
efd: fix tailq entry leak in error path
In rte_efd_create() allocated memory for tailq entry, we should
free it when error happens, otherwise it will lead to memory leak.
Fixes:
56b6ef874f80 ("efd: new Elastic Flow Distributor library")
Cc: stable@dpdk.org
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
David Marchand [Thu, 22 Oct 2020 07:59:59 +0000 (09:59 +0200)]
hash: use x86 common flag for jhash
jhash has been forgotten when factorising the x86 arch check.
Fixes:
dbf17d44f375 ("hash: use common x86 flag")
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
David Marchand [Thu, 22 Oct 2020 07:55:45 +0000 (09:55 +0200)]
drivers: add headers install helper
A lot of drivers export headers, reproduce the same facility than for
libraries.
Note: this change fixes an issue with the crypto scheduler headers which
were not installed properly. A separate backport will be sent to stable
branches.
Suggested-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
David Marchand [Thu, 22 Oct 2020 07:50:38 +0000 (09:50 +0200)]
bpf: use helper to install headers
Libraries can use the headers variable to install headers.
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
David Marchand [Thu, 22 Oct 2020 07:47:04 +0000 (09:47 +0200)]
build: fix version map file references in documentation
Fixes:
63b3907833d8 ("build: remove library name from version map file name")
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Thomas Monjalon [Tue, 20 Oct 2020 14:38:46 +0000 (16:38 +0200)]
version: 20.11-rc1
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Yunjian Wang [Sat, 23 May 2020 10:52:21 +0000 (18:52 +0800)]
eal/linux: fix memory leak in uevent handling
When the memory for uevent.devname is allocated in dev_uev_parse(). It
is not freed when parse the subsystem layer fails in dev_uev_parse().
Before return, it is also not freed in dev_uev_handler(). These cause a
memory leak.
Fixes:
0d0f478d0483 ("eal/linux: add uevent parse and process")
Cc: stable@dpdk.org
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Wed, 14 Oct 2020 20:18:13 +0000 (22:18 +0200)]
bus/pci: remove unused scan by address
The function pci_update_device was used to scan a device
for probing by PCI address.
This private function (and implementations) are unused
since such probing is removed.
Fixes:
f3bac43b60da ("bus/pci: remove unused function to probe by address")
Cc: stable@dpdk.org
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: David Marchand <david.marchand@redhat.com>
Tal Shnaiderman [Tue, 20 Oct 2020 08:48:15 +0000 (11:48 +0300)]
eal/windows: add missing stdint include
Following the addition of the in_addr/in6_addr structs
to in.h the header file must have stdint.h included
for the definitions of the uint8_t/uint32_t types used
within the new structs.
Not having it could results in the following errors
in places where in.h is included:
in.h:30:2: error: unknown type name 'uint32_t'
uint32_t s_addr;
in.h:34:2: error: unknown type name 'uint8_t'
uint8_t s6_addr[16];
Fixes:
f40a74cfcf0 ("eal/windows: improve compatibility networking headers")
Signed-off-by: Tal Shnaiderman <talshn@nvidia.com>
Acked-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Bruce Richardson [Tue, 20 Oct 2020 09:17:43 +0000 (10:17 +0100)]
config: fix kni build
When building kernel modules such as kni, the "config" directory is not
passed as a standard path in the EXTRA_CFLAGS value, meaning that the
rte_compatibility_defines.h is not found from rte_config.h. However, since
both headers are in the same directory, we can just use quotes rather than
angle-brackets to ensure the second header is always found if the first is.
Fixes:
b0b672aeadaa ("build: add defines for compatibility with make build")
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:36 +0000 (15:57 -0700)]
net/failsafe: replace references to slave devices
The term slave is only used in some comments and can be
replaced with sub devices, as done elsewhere.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:22 +0000 (15:57 -0700)]
net/memif: replace master/slave arguments
Replace master/slave terms in this driver.
The memory interface drivers uses a client/server architecture
so change the variable names and device arguments to that.
The previous devargs are maintained for compatibility, but if
used cause a notice in the log.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:21 +0000 (15:57 -0700)]
drivers/bus: reword slave process as secondary
Correct wording is "secondary process".
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:19 +0000 (15:57 -0700)]
eal: rename lcore master and slave
Replace master lcore with main lcore and
replace slave lcore with worker lcore.
Keep the old functions and macros but mark them as deprecated
for this release.
The "--master-lcore" command line option is also deprecated
and any usage will print a warning and use "--main-lcore"
as replacement.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:18 +0000 (15:57 -0700)]
eal: add macro to mark macros as deprecated
Add a macro that causes GCC and CLANG to emit a warning when
a deprecated macro is used.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Stephen Hemminger [Thu, 15 Oct 2020 22:57:17 +0000 (15:57 -0700)]
doc: add policy about master/slave words
Update the coding style document to include a policy against
introducing new master/slave usage. This is taken from the similar
place in the Linux kernel coding style.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:33 +0000 (22:34 -0700)]
app/procinfo: provide way to request info on owned ports
There are cases where a port maybe owned by another (failsafe, netvsc,
bond); but currently proc-info has no way to look at stats of those
ports. This patch provides way for the user to explicitly ask for these
ports.
If no portmask is given the output is unchanged; it only shows the
top level ports. If portmask requests a specific port it will be
shown even if owned.
Increase the size of port mask variable to unsigned long to
allow up to 64 ports to be handled on 64 bit architecture.
The device owner is also a useful thing to show in port info.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Hemant Agrawal [Thu, 24 Sep 2020 05:34:32 +0000 (22:34 -0700)]
app/procinfo: add crypto security context info
If crypto context is not present, no point in displaying it.
This patch adds the crypto based security context info.
Also improve the flag printing to SECURITY OFFLOAD from
INLINE.
Use common code for displaying crypto context information
when doing show_ports and show_crypto.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:31 +0000 (22:34 -0700)]
app/procinfo: dump Rx and Tx descriptor info
Many drivers will report per queue info
as well as how many descriptors are in use.
Also display per-queue offload flags.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:30 +0000 (22:34 -0700)]
app/procinfo: add more port info
Revise the display of port information to include more data
and be more human friendly.
* Show driver and device information
* Show MAC address
* Show flow control information
* Combine lines if possible
* Show all multicast mode
* Show queue mempool name
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:29 +0000 (22:34 -0700)]
app/procinfo: hide EAL info messages
The DPDK EAL info messages at the start of a diagnostic application
are not helpful to end user. Suppress them by setting log-level
by default.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:28 +0000 (22:34 -0700)]
app/procinfo: eliminate useless borders
Printing extra borders does not improve readability, and is just
unnecessary. Putting TSC hz in header also makes no sense here.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Stephen Hemminger [Thu, 24 Sep 2020 05:34:27 +0000 (22:34 -0700)]
app/procinfo: remove unused logtype
This logtype is defined but never used.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Ophir Munk [Sun, 18 Oct 2020 14:21:47 +0000 (14:21 +0000)]
app/regex: fix crash in options parsing
getopt_long() parses command-line arguments. One of its arguments
'longopts' is a pointer to the first element of an array of struct
option. The last element of the array has to be filled with zeros
to mark the end of options. For example:
struct option longopts[] = {
{ "help", 0, 0, ARG_HELP},
....
/* End of options */
{ 0, 0, 0, 0 }
};
This commit adds the last element. Prior to this commit getopt_long()
continued parsing beyond the longopts[] array which occasionally caused
segmentation faults.
Fixes:
de06137cb295 ("app/regex: add RegEx test application")
Cc: stable@dpdk.org
Signed-off-by: Ophir Munk <ophirmu@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
Acked-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Gregory Etelson [Sun, 18 Oct 2020 12:15:23 +0000 (15:15 +0300)]
ethdev: rename tunnel flow offload callbacks
Rename new rte_flow ops callbacks to emphasize relation to tunnel
offload API.
Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
Stephen Hemminger [Fri, 16 Oct 2020 00:26:52 +0000 (17:26 -0700)]
ipc: fix spelling in log and comment
Fixes spelling in comment and message about thread error.
Found while looking at checkpatch complaints about "thead"
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Bruce Richardson [Thu, 15 Oct 2020 15:05:54 +0000 (16:05 +0100)]
build: replace use of old build macros
Use the newer macros defined by meson in all DPDK source code, to ensure
there are no errors when the old non-standard macros are removed.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Bruce Richardson [Thu, 15 Oct 2020 15:05:53 +0000 (16:05 +0100)]
build: standardize component names and defines
As discussed on the dpdk-dev mailing list[1], we can make some easy
improvements in standardizing the naming of the various components in DPDK,
and their associated feature-enabled macros.
Following this patch, each library will have the name in format,
'librte_<name>.so', and the macro indicating that library is enabled in the
build will have the form 'RTE_LIB_<NAME>'.
Similarly, for libraries, the equivalent name formats and macros are:
'librte_<class>_<name>.so' and 'RTE_<CLASS>_<NAME>', where class is the
device type taken from the relevant driver subdirectory name, i.e. 'net',
'crypto' etc.
To avoid too many changes at once for end applications, the old macro names
will still be provided in the build in this release, but will be removed
subsequently.
[1] http://inbox.dpdk.org/dev/
ef7c1a87-79ab-e405-4202-
39b7ad6b0c71@solarflare.com/t/#u
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
Bruce Richardson [Thu, 15 Oct 2020 15:05:52 +0000 (16:05 +0100)]
devtools: load all drivers in null test
Rather than specifying specific drivers in the driver directory to load, we
can just pass in the whole driver directory to the "-d" EAL flag, causing
all drivers to load. This makes the load of driver independent of any
specific driver names.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Bruce Richardson [Thu, 15 Oct 2020 15:05:51 +0000 (16:05 +0100)]
build: remove library name from version map file name
Since each version map file is contained in the subdirectory of the library
it refers to, there is no need to include the library name in the filename.
This makes things simpler in case of library renaming.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Rosen Xu <rosen.xu@intel.com>
Bruce Richardson [Thu, 15 Oct 2020 15:05:50 +0000 (16:05 +0100)]
common/qat: build drivers from common folder
Since the drivers in the common directory can be processed out of order, in
this case following the "bus" directory, we can simplify somewhat the build
of the QAT driver to be done entirely from the "common/qat" folder rather
than having it's build distributed across 3 folders.
This also opens up the possibility of building the QAT driver with crypto
only and the compression part disabled. It further allows more sensible
naming of the resulting shared library in case of standardizing library
names based on device class; i.e. common_qat is more descriptive for a
combined crypto/compression driver than either of the other two prefixes
individually.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Thu, 15 Oct 2020 15:05:49 +0000 (16:05 +0100)]
build: add defines for compatibility with make build
The defines used to indicate what crypto, compression and eventdev drivers
were being built were different to those used in the make build, with meson
defining them with "_PMD" at the end, while make defined them with "_PMD"
in the middle and the specific driver name at the end. This might cause
compatibility issues for applications which used the older defines, which
switching to build against new DPDK releases.
As well as changing the default to match that of make, meson also
special-cases the crypto/compression/event drivers to have both defines
provided. This ensures compatibility for these macros with both meson and
make from older versions.
For a selection of other libraries and drivers, there were other
incompatibilities between the meson and make-defined macros which were not
previously highlighted in a deprecation notice, so we add per-macro
compatibility defines for these to ease the transition from make to meson.
Fixes:
5b9656b157d3 ("lib: build with meson")
Fixes:
9314afb68a53 ("drivers: add infrastructure for meson build")
Fixes:
dcadbbde8e61 ("crypto/null: build with meson")
Fixes:
3c32e89f68e1 ("compress/isal: add skeleton ISA-L compression PMD")
Fixes:
eca504f318db ("drivers/event: build skeleton and SW drivers with meson")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Thu, 15 Oct 2020 15:05:48 +0000 (16:05 +0100)]
examples/l2fwd-crypto: fix missing dependency
When the crypto-scheduler support is enabled, we were missing the
dependency on it as part of the meson build.
Fixes:
89f0711f9ddf ("examples: build some samples with meson")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Thu, 15 Oct 2020 15:05:47 +0000 (16:05 +0100)]
app: fix missing dependencies
A number of lib and driver dependencies for various apps were missed on
build because the proper macro names for their use were mismatched between
meson and make build systems. Before adding in equivalent compatibility
macros we need to ensure to add the proper dependencies to ensure a valid
build.
Fixes:
16ade738fd0d ("app/testpmd: build with meson")
Fixes:
b5dc795a8a55 ("test: build app with meson as dpdk-test")
Fixes:
996ef1176111 ("app: add all remaining apps to meson build")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Thu, 10 Sep 2020 11:32:05 +0000 (12:32 +0100)]
doc: add SPDX license tag header to meson guide
The build-sdk-meson.rst file originates from the short plain-text meson
instructions added in 2018. Add SPDX tag and copyright notice based on the
original commit.
Fixes:
9c3adc289c5e ("doc: add instructions on build using meson")
Cc: stable@dpdk.org
Reported-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Zhihong Wang [Wed, 14 Oct 2020 07:44:05 +0000 (07:44 +0000)]
maintainers: resign from virtio and vhost
I'm resigning from DPDK virtio and vhost maintainer as I'm leaving Intel.
Sincerely thank Maxime, Chenbo and the community for all the support.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Ciara Power [Tue, 13 Oct 2020 15:56:48 +0000 (16:56 +0100)]
test/telemetry: fix socket resource leak
If an error occurred when reading from the socket, the function
returned without closing the socket. This is now fixed to avoid the
resource leak of the sock variable going out of scope.
Coverity issue: 363043
Fixes:
bd78cf693ebd ("test/telemetry: add unit tests for data to JSON")
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Tue, 13 Oct 2020 16:28:20 +0000 (17:28 +0100)]
test/telemetry: fix error handling for socket
When the socket connection failed, an error was printed to screen but
the function did not return an error, and continued to try read from the
socket. This is now corrected to close the socket and return -1 when the
connection fails.
Fixes:
bd78cf693ebd ("test/telemetry: add unit tests for data to JSON")
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:58 +0000 (15:48 +0200)]
acl: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path. These checks are added in the check alg helper functions.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Tested-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:57 +0000 (15:48 +0200)]
node: choose vector path at runtime
When choosing the vector path, max SIMD bitwidth is now checked to
ensure the vector path is suitable. To do this, the scalar function is
chosen by default in the struct, but at node initialisation time, this
function pointer is updated to the vector version if supported, and
if it is within the max SIMD bitwidth limit.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
Ciara Power [Mon, 19 Oct 2020 13:48:56 +0000 (15:48 +0200)]
net: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
The vector path was initially chosen in RTE_INIT, however this is no
longer suitable as we cannot check the max SIMD bitwidth at that time.
Default handlers are now chosen on initialisation, these default
handlers are used the first time the crc calc is called, and they set
the suitable handlers to be used going forward.
Suggested-by: Jasvinder Singh <jasvinder.singh@intel.com>
Suggested-by: Olivier Matz <olivier.matz@6wind.com>
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:55 +0000 (15:48 +0200)]
efd: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:54 +0000 (15:48 +0200)]
member: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU
enabled path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:53 +0000 (15:48 +0200)]
distributor: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: David Hunt <david.hunt@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:52 +0000 (15:48 +0200)]
net/virtio: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Ciara Power [Mon, 19 Oct 2020 13:48:51 +0000 (15:48 +0200)]
net/mlx5: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Ciara Power [Mon, 19 Oct 2020 13:48:50 +0000 (15:48 +0200)]
net/ixgbe: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Reviewed-by: Haiyue Wang <haiyue.wang@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:49 +0000 (15:48 +0200)]
net/ice: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:48 +0000 (15:48 +0200)]
net/iavf: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Bruce Richardson <bruce.richardson@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:47 +0000 (15:48 +0200)]
net/fm10k: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:46 +0000 (15:48 +0200)]
net/enic: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Hyong Youb Kim <hyonkim@cisco.com>
Ciara Power [Mon, 19 Oct 2020 13:48:45 +0000 (15:48 +0200)]
net/bnxt: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Somnath Kotur <somnath.kotur@broadcom.com>
Ciara Power [Mon, 19 Oct 2020 13:48:44 +0000 (15:48 +0200)]
net/axgbe: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Amaranath Somalapuram <asomalap@amd.com>
Ciara Power [Mon, 19 Oct 2020 13:48:43 +0000 (15:48 +0200)]
net/i40e: check max SIMD bitwidth
When choosing a vector path to take, an extra condition must be
satisfied to ensure the max SIMD bitwidth allows for the CPU enabled
path.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:42 +0000 (15:48 +0200)]
doc: describe how to enable AVX512
This patch adds documentation on the usage of the max SIMD bitwidth EAL
setting to enable AVX-512 at runtime.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Kevin Laatz <kevin.laatz@intel.com>
Ciara Power [Mon, 19 Oct 2020 13:48:41 +0000 (15:48 +0200)]
eal: control max SIMD bitwidth
This patch adds a max SIMD bitwidth EAL configuration. The API allows
for an app to set this value. It can also be set using EAL argument
--force-max-simd-bitwidth, which will lock the value and override any
modifications made by the app.
Each arch has a define for the default SIMD bitwidth value, this is used
on EAL init to set the config max SIMD bitwidth.
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
Stephen Hemminger [Thu, 15 Oct 2020 00:55:24 +0000 (17:55 -0700)]
malloc: add alloc_size attribute to functions
By using the alloc_size() attribute the compiler can optimize
better and detect errors at compile time.
For example, Gcc will fail one of the invalid allocation examples
in app/test/test_malloc.c because the allocation is outside the
limits of memory.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Hemant Agrawal [Sat, 11 Jul 2020 08:28:45 +0000 (13:58 +0530)]
bitrate: add free function
This patch adds support for free function.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Gagandeep Singh [Mon, 19 Oct 2020 09:48:01 +0000 (17:48 +0800)]
crypto/caam_jr: fix device tree parsing for SEC_ERA
Previously, SEC_ERA was hardcoded and it was removed in [1].
Now when that hardcoded was removed, it is supposed to be
read from the device tree but it is not done correctly.
This patch calls a necessary API of_init() before using any
of_* APIs to retrieve information from the device tree and
if reading integer value that must be converted to cpu endianness
before using it.
[1]
eef9e0412a84 ("drivers/crypto: fix build with -fno-common")
Fixes:
1d678de329ab ("crypto/caam_jr: add basic job ring routines")
Cc: stable@dpdk.org
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Jun Yang [Thu, 15 Oct 2020 09:47:08 +0000 (17:47 +0800)]
raw/dpaa2_qdma: support enqueue without response wait
In this condition, user needs to check if dma transfer is completed
by its own logic.
qDMA FLE pool is not used in this condition since there is no chance to put
FLE back to pool without dequeue response.
User application is responsible to transfer FLE memory to qDMA driver
by qdma job descriptor and maintain it as well.
Signed-off-by: Jun Yang <jun.yang@nxp.com>
Jun Yang [Thu, 15 Oct 2020 09:47:07 +0000 (17:47 +0800)]
raw/dpaa2_qdma: support FLE pool per queue
Don't mix SG/none-SG with same FLE pool format,
otherwise, it impacts none-SG performance.
In order to support SG queue and none-SG queue
with different FLE pool element formats, associate
FLE pool with queue instead of device.
Signed-off-by: Jun Yang <jun.yang@nxp.com>
Jun Yang [Thu, 15 Oct 2020 09:47:06 +0000 (17:47 +0800)]
raw/dpaa2_qdma: support scatter gather in enqueue
This patch add support to add Scatter Gather support
for different jobs for qdma queues.
It also supports gathering multiple enqueue jobs into SG enqueue job(s).
Signed-off-by: Jun Yang <jun.yang@nxp.com>