Kalesh AP [Thu, 6 Feb 2020 16:33:12 +0000 (22:03 +0530)]
net/bnxt: fix port stop on error recovery failure
During live FW upgrade or error recovery, if restoring the filter
settings fail after port start, driver invokes bnxt_uninit_resources()
only. Fix it to invoke bnxt_dev_stop_op() first before calling
bnxt_uninit_resources().
Kalesh AP [Thu, 6 Feb 2020 16:33:10 +0000 (22:03 +0530)]
net/bnxt: log firmware debug notifications
The debug notifications are not functional in nature, they should
only have diagnostic value. Other than logging to system log,
drivers shall not take any other functional action based on this
async event.
Rahul Gupta [Thu, 6 Feb 2020 16:33:09 +0000 (22:03 +0530)]
net/bnxt: fix default timeout for getting FW version
Initially when driver is loading, there is no HWRM timeout configured
by FW, the VER_GET command needs use default timeout as 500ms and
while recovering from fatal/non-fatal FW error, it should use timeout
as 50ms.
Fixes: 458f0360e8dc ("net/bnxt: get default HWRM command timeout from FW") Cc: stable@dpdk.org Signed-off-by: Rahul Gupta <rahul.gupta@broadcom.com> Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Kalesh AP [Thu, 6 Feb 2020 16:33:08 +0000 (22:03 +0530)]
net/bnxt: fix unnecessary delay in port stop
VFs and multifunction PFs do not have the privilege to change
link configuration. We force the physical link down as a part
of device stop only for single physical function(SPF).
This change also helps in eliminating the logs when a VF port
is stopped:
"Port 0: link state change event"
"bnxt_print_link_info(): Port 0 Link Up - speed 25000 Mbps - full-duplex"
Junxiao Shi [Mon, 27 Jan 2020 18:32:11 +0000 (11:32 -0700)]
drivers/crypto: fix session-less mode
When OpenSSL or AESNI-MB cryptodev is being used in sessionless mode
for symmetric crypto operation (e.g. SHA256 hash), the driver prints
error message:
CRYPTODEV: set_sym_session_private_data() line 489:
Set private data for driver 0 not allowed
Then, AESNI-MB driver segfaults in post_process_mb_job().
Bugzilla ID: 377 Fixes: b3bbd9e5f2 ("cryptodev: support device independent sessions") Fixes: c68d7aa354 ("crypto/aesni_mb: use architecture independent macros") Cc: stable@dpdk.org Signed-off-by: Junxiao Shi <git@mail1.yoursunny.com>
Artur Trybula [Thu, 6 Feb 2020 09:37:35 +0000 (10:37 +0100)]
test/compress: replace test vector
This patch replaces an existing test vector with a new one containing
public domain text only. This is to avoid any potential issues
re-licensing content as BSD-3 which has no clear original license.
Fixes: b06aa643cac4 ("test/compress: add initial unit tests") Cc: stable@dpdk.org Signed-off-by: Artur Trybula <arturx.trybula@intel.com>
Add missing doxygen comment of rte_crypto_mbuf_to_vec's fields.
Fixes: 7adf992fb9bf ("cryptodev: introduce CPU crypto API") Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
David Marchand [Fri, 7 Feb 2020 14:06:00 +0000 (15:06 +0100)]
crypto/ccp: fix queue alignment
Caught by compiling with -fno-common.
A ____cacheline_aligned symbol can be found in the crypto/ccp driver
object files.
Looking at this driver source, the ____cacheline_aligned (kernel?)
alignment macro is undefined.
The compiler treats this as a symbol definition and generates a global
symbol.
Fixes: ef4b04f87fa6 ("crypto/ccp: support device init") Cc: stable@dpdk.org Signed-off-by: David Marchand <david.marchand@redhat.com>
Xiao Wang [Tue, 21 Jan 2020 03:06:57 +0000 (22:06 -0500)]
examples/l3fwd-power: fix interrupt disable
Since all related queues' interrupts are turned on before epoll, we need
to turn off all the interrupts after wakeup. This patch fixes the issue
of only turning off the interrupted queues.
Fixes: b736d64787fc ("examples/l3fwd-power: disable Rx interrupt when waking up") Cc: stable@dpdk.org Signed-off-by: Xiao Wang <xiao.w.wang@intel.com> Tested-by: Harman Kalra <hkalra@marvell.com> Reviewed-by: Liang Ma <liang.j.ma@intel.com> Tested-by: Liang Ma <liang.j.ma@intel.com> Acked-by: David Hunt <david.hunt@intel.com>
Scott Wasson [Fri, 14 Feb 2020 10:00:52 +0000 (10:00 +0000)]
kni: fix not contiguous FIFO
KNI requires FIFO to be physically contiguous, with existing
'rte_memzone_reserve()' API this is not guaranteed by default and as a
result KNI rings and packet delivery may be broken if reserved memory
is not physically contiguous.
Fixing it by providing 'RTE_MEMZONE_IOVA_CONTIG' flag to ask physically
contiguous memory.
Thomas Monjalon [Mon, 5 Aug 2019 12:30:12 +0000 (14:30 +0200)]
doc: remove major in designation of normal releases
The word "major" was used to differentiate with release candidates
or stable maintenance releases.
However the word "major" can be understood as "LTS",
so it is less confusing to avoid this word.
Reported-by: Ori Kam <orika@mellanox.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Kevin Traynor <ktraynor@redhat.com>
Thomas Monjalon [Sun, 9 Feb 2020 21:14:52 +0000 (22:14 +0100)]
fix Mellanox copyright and SPDX tag
Mellanox owns Tilera and EZchip, so the copyrights can be converted.
At the same time, the license header is switched to SPDX tag format,
and a typo is fixed in another copyright line.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Ferruh Yigit [Wed, 12 Feb 2020 17:14:24 +0000 (17:14 +0000)]
kni: fix build with Linux 5.6
With the following Linux commit a new parameter 'txqueue' has been added
to 'ndo_tx_timeout' ndo:
commit 0290bd291cc0 ("netdev: pass the stuck queue to the timeout handler")
The change reflected to the KNI with version check.
Cc: stable@dpdk.org Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: David Marchand <david.marchand@redhat.com>
David Hunt [Tue, 11 Feb 2020 10:50:08 +0000 (10:50 +0000)]
examples/power: fix ack for enable/disable turbo
When a VM sends a command through virtio-serial to enable/disable
turbo, it is successfully enabled or disabled, yet the response to the
VM is NACK. This is because all the library frequency change APIs return
1 for success (change in frequency), 0 for success (no change in
frequency) and -1 for failure. However the turbo enable/disable APIs just
return 0 for success and -1 for failure.
Fix the handling of the return code to treat ">= 0" as success, and
send an ACK. Only send NACK when < 0 (failure).
Fixes: 0de94bcac7fc ("examples/vm_power: send confirmation cmd to guest") Cc: stable@dpdk.org Signed-off-by: David Hunt <david.hunt@intel.com> Acked-by: Lei Yao <lei.a.yao@intel.com>
Ciara Power [Fri, 7 Feb 2020 10:24:02 +0000 (10:24 +0000)]
examples/ioat: fix invalid link status check
The return value of the get link function call was not checked, and
could return a negative value indicating a failure. This meant the
link_status of the link being checked is invalid, because the link was
not filled with data. The return value is now checked, and if the return
value is not 0 for success, the loop continues with the next port.
To avoid confusion between variable names, the existing retval variable
is renamed to link_status, to better represent its use.
Coverity issue: 350348 Fixes: c8e6ceecebc1 ("examples/ioat: add new sample app for ioat driver") Cc: stable@dpdk.org Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Ciara Power [Tue, 4 Feb 2020 16:00:06 +0000 (16:00 +0000)]
examples/ioat: fix failure check for ioat dequeue
The nb_dq return value from the ioat dequeue is negative in failure
cases, however the variable was an unsigned int, causing the condition
where nb_dq <= 0 to never be true. This is now cast to a signed int,
which will successfully reflect the -1 value to be used in this
conditional check.
Coverity issue: 350342
Coverity issue: 350349 Fixes: 92c981637ffc ("examples/ioat: handle failure case for ioat dequeue") Cc: stable@dpdk.org Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
ACL build phase for range fields that are bigger then
16 bits might generate wrong trie.
For more details please refer to:
https://bugs.dpdk.org/show_bug.cgi?id=307
Bugzilla ID: 307 Fixes: dc276b5780c2 ("acl: new library") Cc: stable@dpdk.org Reported-by: Ido Goshen <ido@cgstowernetworks.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:37 +0000 (19:14 -0800)]
eal/windows: support command line options parsing
Adding specific logic for eal.c to support parsing on
Windows.
Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:36 +0000 (19:14 -0800)]
eal/windows: support more common files
Added support for additional common files in meson build
to expand Windows EAL and to support the lcore parsing
feature on Windows.
Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:35 +0000 (19:14 -0800)]
eal: disable syslog and dlopen on Windows
Excluding syslog/ dlfcn definitions and parameters
from Windows by adding #ifndef RTE_EXEC_ENV_WINDOWS.
Note: This is a temporary change. In future, separate
'unix' directory will be created for unix specific functions.
Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:34 +0000 (19:14 -0800)]
eal/x86: include SSE4 support on Windows
Modified common/include/arch/x86/rte_vect.h
to include SSE4 header for Windows.
Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:33 +0000 (19:14 -0800)]
eal/windows: detect process type
Adding a function to detect process type, also included
header files to contain suitable function declarations
and to support extra warning flags.
Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:32 +0000 (19:14 -0800)]
eal/windows: add getopt implementation
Adding getopt files to support parsing option on
Windows.
The original contribution is under BSD-2 license.
https://github.com/greenplum-db/libusual/blob/master/usual/getopt.c
https://github.com/greenplum-db/libusual/blob/master/usual/getopt.h
Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:31 +0000 (19:14 -0800)]
eal/windows: add some basic functions and macros
Adding additional function definitions for pthread, cpuset
implementation, asprintf implementation, in order to support
common code.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Pallavi Kadam [Fri, 7 Feb 2020 03:14:30 +0000 (19:14 -0800)]
eal/windows: add dirent implementation
Adding dirent.h on Windows to support common code.
eal_common_options.c includes this file.
The original contribution is under MIT license.
https://github.com/tronkko/dirent
Signed-off-by: Antara Ganesh Kolar <antara.ganesh.kolar@intel.com> Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Reviewed-by: Keith Wiles <keith.wiles@intel.com> Reviewed-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Tested-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com> Acked-by: Narcisa Ana Maria Vasile <narcisa.vasile@microsoft.com>
Thomas Monjalon [Tue, 11 Feb 2020 23:57:24 +0000 (00:57 +0100)]
devtools: enable more config options in build test
The Linux kernel modules kni and igb_uio were disabled by default
so they need a new option (+kmods) for testing compilation.
Some recent features were not enabled in compilation testing:
- mlx5 vDPA (depends on libibverbs)
- ifpga (depends on libfdt)
- ipn3ke (depends on libfdt)
- Arm WFE
Check on libfdt availability is added, and not considered as a fix.
Fixes: 91a861e54164 ("config: disable Linux kernel modules by default") Fixes: 95276abaaf0a ("vdpa/mlx5: introduce Mellanox vDPA driver") Fixes: 1be7855d7739 ("eal: add wait until equal API") Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Tue, 11 Feb 2020 23:57:23 +0000 (00:57 +0100)]
config: deduplicate options
Some config options are overwritten with the same value
as the one inherited from its template parent.
Such duplicates which have no meaningful comments are removed.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: David Marchand <david.marchand@redhat.com>
Thomas Monjalon [Mon, 10 Feb 2020 09:53:34 +0000 (10:53 +0100)]
build: remove redundant config include
The header file rte_config.h is always included by make or meson.
If required in an exported API header file, it must be included
in the public header file for external applications.
In the internal files, explicit include of rte_config.h is useless,
and can be removed.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Matan Azrad <matan@mellanox.com> Acked-by: David Marchand <david.marchand@redhat.com> Acked-by: Neil Horman <nhorman@tuxdriver.com>
Sunil Kumar Kori [Tue, 14 Jan 2020 09:04:53 +0000 (14:34 +0530)]
common/octeontx2: add polling based response mbox message
Currently otx2_mbox_get_rsp_xxx get response once AF driver
interrupts after completion. But this function will get into
deadlock if called in another interrupt context.
To avoid it, implemented another version of this function which polls
on dedicated memory for a given timeout.
Also after clearing interrupt, there could UP messages available for
processing. So irq handler must check mbox messages.
Signed-off-by: Sunil Kumar Kori <skori@marvell.com> Signed-off-by: Harman Kalra <hkalra@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
This commit fixes possible integer overflow for
prev_idx in build_common_root() CID 350596
and
tbl8_idx in write_edge() CID 350597
Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
overflow_before_widen: Potentially overflowing expression tbl8_idx * 256
with type int (32 bits, signed) is evaluated using 32-bit arithmetic,
and then used in a context that expects an expression of
type uint64_t (64 bits, unsigned).
Coverity issue: 350596, 350597 Fixes: c3e12e0f0354 ("fib: add dataplane algorithm for IPv6") Cc: stable@dpdk.org Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Thomas Monjalon [Thu, 23 Jan 2020 08:30:22 +0000 (09:30 +0100)]
ring: fix namespace prefix of inline functions
When adding custom element size feature, some internal inline functions
were added in a public header without rte_ prefix.
It is fixed by adding __rte_ring_.
Fixes: cc4b218790f6 ("ring: support configurable element size") Reported-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Acked-by: Olivier Matz <olivier.matz@6wind.com>
Bruce Richardson [Mon, 27 Jan 2020 14:28:22 +0000 (14:28 +0000)]
build: allow using wildcards to disable drivers
Rather than having to explicitly list each and every driver to disable in a
build, we can use a small python script and the python glob library to
expand out the wildcards. This means that we can configure meson using e.g.
meson -Ddisable_drivers=crypto/*,event/* build
to do a build omitting all the crypto and event drivers. Explicitly
specified drivers e.g. net/i40e, work as before, and can be mixed with
wildcarded drivers as required.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Robin Jarry <robin.jarry@6wind.com> Acked-by: Luca Boccassi <bluca@debian.org>
Bruce Richardson [Fri, 24 Jan 2020 15:37:55 +0000 (15:37 +0000)]
build: remove some icc warnings
While icc builds without the "werror" setting build successfully, there are
a lot of warnings. To make the output cleaner, and to allow building with
warnings enabled, we can add a list of warning ids to ignore.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Bruce Richardson [Fri, 24 Jan 2020 15:37:54 +0000 (15:37 +0000)]
net/octeontx2: check compiler flag before use
Rather than assuming all compilers support the -flax-vector-extensions
flag, we should test this before using it, thereby potentially avoiding
warnings.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
Thomas Monjalon [Tue, 21 Jan 2020 14:35:31 +0000 (15:35 +0100)]
mk: ignore missing field initializers warning
Three warnings are commonly disabled in DPDK with make and meson:
* address-of-packed-member
always disabled
* missing-field-initializers
disabled with meson
disabled with make + clang or make + gcc < 4.7
disabled with make + gcc <= 5 for test files and event drivers
* packed-not-aligned
disabled with meson
This change is removing exceptions for missing-field-initializers.
As it is always disabled, some redundant configs are cleaned up.
Now the situation is:
* address-of-packed-member
always disabled
* missing-field-initializers
always disabled
* packed-not-aligned
disabled with meson
It could alternatively be decided to disable missing-field-initializers
only for old gcc (< 6).
The warning packed-not-aligned is not modified in this change.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
fill_sg_comp_from_iov() prepares gather components for i/p IOV
buffers and extra buf. This API is failing to create a gather component
for extra_buf when IOV buf len is zero. Though there is enough space
to accommodate extra_buf, because of pre-decrementing of extra_buf
length from aggregate size, this issue is seen.
Fixes: b74652f3a91f ("common/cpt: add microcode interface for encryption") Cc: stable@dpdk.org Signed-off-by: Archana Muniganti <marchana@marvell.com> Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Enable cpu-crypto mode testing by adding dedicated environmental
variable CRYPTO_PRIM_TYPE. Setting it to 'type cpu-crypto' allows
to run test scenario with cpu crypto acceleration.
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
Add support for CPU crypto mode by introducing required handler.
Authenticated encryption and decryption are supported with tag
generation/verification.
CPU crypto support include both AES-GCM and GMAC algorithms.
Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
AES XTS support is added to fips application. Parse test-vectors
from input files, populate AES XTS tests and prepare AES XTS
operations for fips validation.
Vamsi Attunuru [Tue, 4 Feb 2020 11:17:25 +0000 (16:47 +0530)]
net/octeontx2: sync inline tag type
Tag type configuration for the inline processed packets is set during
ethdev configuration, it might conflict with tag type configuration
done during Rx adapter configuration which would be setup later.
This conflict is fixed as part of flow rule creation by updating
tag type config of inline same as Rx adapter configured tag type.
examples/ipsec-secgw: get rid of maximum SP limitation
Get rid of maximum SP limitation.
Keep parsed SP's into the sorted by SPI value array.
Use binary search in the sorted SP array to find appropriate SP
for a given SPI.
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com> Acked-by: Anoob Joseph <anoobj@marvell.com>
examples/ipsec-secgw: get rid of maximum SA limitation
Get rid of maximum SA limitation.
Keep parsed SA's into the sorted by SPI value array.
Use binary search in the sorted SA array to find appropriate SA
for a given SPI.
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com> Acked-by: Anoob Joseph <anoobj@marvell.com>
1. Use SAD library for inbound SA lookup
2. Changes in struct sa_ctx:
- sa array allocates dynamically depending on number of configured sa
- All SA's are kept one by one without using SPI2IDX
3. SP's userdata now contain index of SA in sa_ctx instead of SPI
4. Get rid of SPI2IDX macro
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com> Acked-by: Anoob Joseph <anoobj@marvell.com>