Tom Jones [Thu, 1 Feb 2024 16:09:20 +0000 (16:09 +0000)]
dpdk: Use gnu sed on FreeBSD for header fix ups
FreeBSD sed isn't compatible with gnu seds in place option. On FreeBSD
explicitly use gsed, on Linux and other platforms this is available just
as 'sed'.
Type: improvement
Change-Id: I6e4fcaf11d4d22cd3e4cd0c3327b16393542845f
Signed-off-by: Tom Jones <thj@freebsd.org>
Monendra Singh Kushwaha [Mon, 6 May 2024 09:27:28 +0000 (14:57 +0530)]
octeon: fix rvu vf device id
Type: fix
Fixes: I1ea92f
Change-Id: Idf91b3f4cb3cc93081a282a14ffe2421a3628509
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Monendra Singh Kushwaha [Fri, 19 Apr 2024 11:04:49 +0000 (16:34 +0530)]
octeon: add max packet length check
This patch compares packet length with maximum supported
packet length and drops the packet accordingly.
Type: fix
Change-Id: I80ef453d43149818936649e1e58ae90c84a34ab9
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Monendra Singh Kushwaha [Thu, 25 Apr 2024 10:06:21 +0000 (15:36 +0530)]
octeon: fix buffer free for more than 6 segment
Type: fix
Fixes:
01fe7ab
Change-Id: I4423d287e8148344754b2f6a13886c093a1384e4
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Florin Coras [Fri, 3 May 2024 20:23:00 +0000 (13:23 -0700)]
vcl: allow more rx events on peek
If peek touches all data in the fifo, unset fifo event to request new
events when more data is enqueued.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I878fa017f18ada5cef557600673bba920f230542
Stanislav Zaikin [Tue, 1 Aug 2023 12:28:37 +0000 (14:28 +0200)]
interface: fix check in set_interface_name api
set_interface_name may crash if wrong sw_if_index is passed e.g. ~0
Type: fix
Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
Change-Id: Ic7e400c914fb33c2f9eac4f2985bb5b163a18d57
Matus Fabian [Thu, 2 May 2024 09:17:15 +0000 (11:17 +0200)]
http: fix http server in response
App name is used in HTTP response Server header.
Type: fix
Change-Id: Ie3b2d985dd7d554a0352f7e602891f878bebd031
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Mohsin Kazmi [Thu, 29 Sep 2022 15:28:04 +0000 (15:28 +0000)]
gso: use the header offsets from buffer metadata
Type: improvement
Change-Id: I955fbef0e0238cb69307e96cd1c677061737e5f3
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Eric Sun [Wed, 2 Feb 2022 19:12:13 +0000 (11:12 -0800)]
acl: add missing byteswap header for musl
On glibc this builds fine; on musl the byteswap header doesn't seem to be
included properly. This change adds it, fixing the build.
Type: fix
Change-Id: I402812409395d471357b6317084774afba39548f
Signed-off-by: Eric Sun <esun@meraki.com>
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Filip Tehlar [Mon, 27 Nov 2023 12:28:36 +0000 (13:28 +0100)]
http: fix client receiving large data
HTTP client was relying on synchronous rx notifications to the client
app when moving lage data from underlying transport proto.
Recent change in session layer made such notifications asynchronous
making http client not working. This patch fixes the issue.
Type: fix
Change-Id: I4b24c6185a594a0fe8d5d87c149c53d3b40d7110
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Damjan Marion [Wed, 24 Apr 2024 18:50:01 +0000 (20:50 +0200)]
octeon: fix roc_nix_npc_mac_addr_get() return value check
Type: fix
Fixes:
01fe7ab
Change-Id: I46782c69773085f9e6a8dfff798bb42b1e822c32
Signed-off-by: Damjan Marion <damarion@cisco.com>
Klement Sekera [Fri, 26 Apr 2024 07:57:39 +0000 (09:57 +0200)]
tests: remove duplicate SVR test case
Type: fix
Change-Id: I4105109c1c659190fc2da4ee1802ef53449a3c15
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Adrian Villin [Mon, 29 Apr 2024 12:27:57 +0000 (08:27 -0400)]
hs-test: disable color output
Jenkins cannot display colors in console output
Type: fix
Change-Id: I5365dec471d773dae1f139c5fabd0711298f8bea
Signed-off-by: Adrian Villin <avillin@cisco.com>
Damjan Marion [Fri, 15 Mar 2024 18:33:34 +0000 (18:33 +0000)]
crypto-native: add SHA2-HMAC
Type: feature
Change-Id: I9e7ebf43536c972a62621fc7ad7406abec0ce071
Signed-off-by: Damjan Marion <damarion@cisco.com>
Matus Fabian [Mon, 29 Apr 2024 09:06:44 +0000 (11:06 +0200)]
hs-test: fix cpu allocator
Effective CPUs file is different between cgroups v1 and v2.
Type: test
Change-Id: Ic1b9059435b3f0944624120f57e72da45adca223
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Guillaume Solignac [Thu, 20 Apr 2023 16:02:59 +0000 (18:02 +0200)]
pci: fix missing limits.h
When building with musl, PATH_MAX is not available if we don't add its header
to pci.c.
Type: fix
Signed-off-by: Guillaume Solignac <gsoligna@cisco.com>
Change-Id: I3d4e7cf5754d7c1d480834d7cd038d5bda46fd2f
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Dave Wallace [Thu, 25 Apr 2024 20:21:37 +0000 (16:21 -0400)]
hs-test: clean up Makefile for compatibility with ci-management
Type: test
Change-Id: Ic767bc1eef0180941dd8730f9fcca1389ad7e043
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Tom Jones [Thu, 25 Apr 2024 13:39:05 +0000 (13:39 +0000)]
vcl: Only exclude vcl ldpreload on FreeBSD
Previously all of the vcl library was excluded from the build on
FreeBSD, this was too agressive as only the ldpreload component requeres
platform specific implementation for FreeBSD
Type: improvement
Change-Id: I94e70d7730878cc98060561eedf07cb7e4d1868a
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 25 Apr 2024 13:33:34 +0000 (13:33 +0000)]
hsa: Link against libepoll-shim
Type: improvement
Change-Id: I08610ce71282f10c587d956b27e0f572a812bedd
Signed-off-by: Tom Jones <thj@freebsd.org>
Dave Wallace [Wed, 24 Apr 2024 17:19:18 +0000 (13:19 -0400)]
dpdk: bump rdma-core to 51.0
- Per dpdk 24.03 release notes (rdma-core >= 50.0)
Type: feature
Change-Id: Ieed077dc9b54cc1c59c75ebdbccfc683c7636222
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Tom Jones [Mon, 29 Jan 2024 10:55:09 +0000 (10:55 +0000)]
vlib: Add FreeBSD thread specific header and calls
Type: improvement
Change-Id: Ia84683936da02968991ea717316a834a5da1a517
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Fri, 26 Jan 2024 16:36:52 +0000 (16:36 +0000)]
vppinfra: Link against lib execinfo on FreeBSD
Type: improvement
Change-Id: Ie3d6cba886e0779949e8d574f82cff62abc7ebed
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Fri, 2 Feb 2024 14:25:24 +0000 (14:25 +0000)]
vppinfra: Add FreeBSD method for updating pmalloc lookup table
FreeBSD has a different interface to request memory mapping information.
Add a FreeBSD specific method for reading physical addresses and make it
available at build time.
Type: improvement
Change-Id: I3588dde8e0a6f6d53333040245341ed09cebef9d
Signed-off-by: Tom Jones <thj@freebsd.org>
Kai Ji [Tue, 23 Apr 2024 16:10:13 +0000 (16:10 +0000)]
dpdk: bump to DPDK 24.03
This patch bumps DPDK version to 24.03
Type: feature
Change-Id: I4d7d1348f905579ece3cbe4ab89873abd212c636
Signed-off-by: Kai Ji <kai.ji@intel.com>
Matus Fabian [Wed, 24 Apr 2024 08:29:41 +0000 (10:29 +0200)]
hsa: fix http client error handling
Type: fix
Change-Id: I5595260b903e3e1f15caccd168914f33f7161b59
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Damjan Marion [Wed, 24 Apr 2024 11:21:05 +0000 (11:21 +0000)]
misc: fix int/enum mismatch errors reported by gcc-14
Type: fix
Change-Id: I80e90cab8e2e9fef837779e36e0256baf791b801
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 24 Apr 2024 11:36:01 +0000 (11:36 +0000)]
dpdk: remove unnecessary includes
Type: improvement
Change-Id: Idf3d440ee9763b54c973e6d87394b786eb66e307
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 24 Apr 2024 11:41:12 +0000 (11:41 +0000)]
dpdk: remove dead code
Type: improvement
Change-Id: I888f29e1ff15c5aa59a2a74dc0b2a818baf0bfde
Signed-off-by: Damjan Marion <damarion@cisco.com>
Tom Jones [Tue, 30 Jan 2024 10:39:23 +0000 (10:39 +0000)]
vlib: Add a skeleton pci interface for FreeBSD
Implement a subset of the pci interface with unimplemented methods
marked with a comment. This is enough functionality to allow dpdk to
attach to pci devices and forward traffic on FreeBSD.
Type: improvement
Change-Id: I0d87778cd92ae332a6802c11083d3d99988678a1
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 8 Feb 2024 14:55:36 +0000 (14:55 +0000)]
fateshare: Add FreeBSD specific API for controlling processes
Type: improvement
Change-Id: I7ea8b5505a2663d6751208f0001e4b9ba2deb150
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Mon, 29 Jan 2024 15:08:01 +0000 (15:08 +0000)]
api: Add FreeBSD specific mechanisms for unix sockets
FreeBSD doesn't support SCM_CREDENTIALS, but has an equivalent mechanism
called SCM_CRED. This is documented in unix(4), use SCM_CREDS on
FreeBSD.
Type: improvement
Change-Id: Iaf4ec0d68445239c06fa0eef6c25db7e3328e989
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Fri, 2 Feb 2024 14:28:38 +0000 (14:28 +0000)]
dpdk: Use FreeBSD specific values for network interface classes
The PCI class values used to identify devices are different between
platforms. Add a selector for the values used on FreeBSD.
Type: improvement
Change-Id: I981f0dc24954457068fc94bcc4681b120ee253db
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Fri, 2 Feb 2024 14:28:09 +0000 (14:28 +0000)]
dpdk: Only use vmbus on Linux
Type: improvement
Change-Id: If181c4bfd7fc93583a608d478bd070930c853f52
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 1 Feb 2024 16:07:54 +0000 (16:07 +0000)]
dpdk: Disable building FreeBSD kernel modules
Disable building the FreeBSD kernel modules, while these are required
to run, this dpdk step will fails inside the vpp build.
If the build succeeded this step would try to install the kernel modules
as root in the vpp build which also isn't desirable. For packaging the
kernel modules should be provided in a seperate package rather than
through the vpp build process.
Type: improvement
Change-Id: I01f1ae2845445e2babad380b675054b80d4b325b
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 1 Feb 2024 16:05:31 +0000 (16:05 +0000)]
dpdk: Only use vmbus on Linux
Type: improvement
Change-Id: Iba3e287f420c0bdc8d248695163e7dfe1acd24d8
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 1 Feb 2024 16:06:25 +0000 (16:06 +0000)]
dpdk: Only require libnuma on Linux
On FreeBSD the numa APIs are always available.
Type: improvement
Change-Id: I34b8f6b0a81bc3d73f9b95b10d3a788dcdd71b65
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Wed, 24 Apr 2024 10:30:20 +0000 (10:30 +0000)]
vppinfra: Add method for getting current executable name
Add a unix method for getting the current executable name. This is
implemented to match the readlink api for existing calls.
Type: improvement
Change-Id: Id06a55892d09d0b305a56b55a424f53ffb685a72
Signed-off-by: Tom Jones <thj@freebsd.org>
Signed-off-by: Damjan Marion <damarion@cisco.com>
Brian Morris [Tue, 23 Apr 2024 20:17:10 +0000 (20:17 +0000)]
tls: don't upper-case cipher string
Change-Id: Ic8308046610aa5d49d9595bcd450f9651b9915e4
Signed-off-by: Brian Morris <bmorris2@cisco.com>
The string is allowed to contain lower case characters, for example "TLSv1.2"
Type: fix
Gabriel Oginski [Thu, 18 Apr 2024 12:14:34 +0000 (12:14 +0000)]
ipsec: fix CLI for create ipsec itf
This commit adds missing support in CLI for creating ipsec itf
in p2mp mode.
Type: fix
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I1bd1cc6667625b8e527af8d25bd8e723751dbc41
Guillaume Solignac [Tue, 9 Apr 2024 09:40:51 +0000 (11:40 +0200)]
octeon: add promisc support
We add the capability to enable and disable promiscous mode on the
octeon port.
Type: feature
Signed-off-by: Guillaume Solignac <gsoligna@cisco.com>
Change-Id: I9a1464d2e1e8a0570ff16e221a4896aedc3ed6f8
Maxime Peim [Fri, 5 Apr 2024 12:16:39 +0000 (14:16 +0200)]
tests: allow ip table name
Type: refactor
Change-Id: I4abbc77a447358f4beaa05505299cae732a3f374
Signed-off-by: Maxime Peim <mpeim@cisco.com>
Denys Haryachyy [Tue, 20 Feb 2024 07:59:55 +0000 (09:59 +0200)]
ikev2: uptime
Introduced SA and child SA uptime.
Type: improvement
Change-Id: I28cf9f90d35ebe035a31ed0a985a5e462c8536a8
Signed-off-by: Denys Haryachyy <garyachy@gmail.com>
Matus Fabian [Mon, 22 Apr 2024 17:47:27 +0000 (19:47 +0200)]
hs-test: add tests repeat option
Type: test
Change-Id: I0143d26d929f6408a5399d7ca536e48cbd9d46bb
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Mon, 22 Apr 2024 11:42:00 +0000 (13:42 +0200)]
hs-test: fix TCP with loss test
Load NSIM plugin.
Type: test
Change-Id: I250f51e6622419d98fd17216031a5b4d2da07fba
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Monendra Singh Kushwaha [Mon, 15 Apr 2024 06:11:45 +0000 (11:41 +0530)]
octeon: add support for SDP device
This patch adds support for SDP (System DPI Packet Interface Unit)
device.
Type: feature
Change-Id: Idf1f53b151edf2992613746d5818409187b4b051
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Tom Jones [Mon, 29 Jan 2024 10:34:21 +0000 (10:34 +0000)]
vlib: Place linux pci headers in a linux include block
Type: improvement
Change-Id: I6b30ffd1eabfa9544d548082b7e38b8fe7224c07
Signed-off-by: Tom Jones <thj@freebsd.org>
lijh_7 [Mon, 19 Feb 2024 01:17:47 +0000 (09:17 +0800)]
nat: add saddr info to nat44-ed o2i flow's rewrite
Type: fix
Change-Id: Ic303ff9b21872b7cc31f23c92e48ec3737eeb8fe
Signed-off-by: lijinhui <lijh_7@chinatelecom.cn>
Anton Nikolaev [Fri, 19 Apr 2024 15:22:44 +0000 (15:22 +0000)]
ipip: specify af for a tunnel ip addresses
Currently ipip tunnel allows to use an empty addresses for dst when we
trying to add tunnel, but it doesn't return it correctly on ipip dump
call. There is case when we create an ipip tunnel with an empty ipv6
address, address is zero, but AF is ipv6. And when we dump ipip tunnels
we get an emtpy ipv4 address instead of an empty ipv6 address.
There is no point to detect AF for each address in
send_ipip_tunnel_details, because ipip tunnel can't handle different
AF for src and dst addresses, and prohibits creating ipip tunnel
with different AF of dst and src addresses.
With this fix, send_ipip_tunnel_details function return a correct AF
despite address value.
Type: fix
Change-Id: Ib343293ad79a300cdb70135fffbfd156dfef6e27
Signed-off-by: Anton Nikolaev <anikolaev@netgate.com>
Adrian Villin [Thu, 14 Mar 2024 15:42:55 +0000 (11:42 -0400)]
hs-test: transition to ginkgo test framework
Type: test
Change-Id: Ia38bf5549d20b22876f6082085b69a52a03d0142
Signed-off-by: Adrian Villin <avillin@cisco.com>
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Vratko Polak [Thu, 11 Apr 2024 14:06:29 +0000 (16:06 +0200)]
sr: use correct reply to sr_policy_add_v2
Type: fix
Fixes:
c4c205b091934d96a173f4c0d75ef7e888298ac7
Change-Id: I110729601a9f19451297883b781ec56e2b31465b
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Florin Coras [Tue, 16 Apr 2024 23:53:14 +0000 (16:53 -0700)]
session: force session cleanups on app detach
Force transport and session cleanup on session detach if transport is
already closing. This should also avoid races between transport
initiated session cleanups and pending session control events.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I83a947a0c01f5af8ac70aa31fee660276f1d1c60
lijinhui [Mon, 15 Apr 2024 02:07:46 +0000 (10:07 +0800)]
ip: fix comments for icmp4
Type: fix
Change-Id: I5f309ca4db4ae4a3e475d87b8f0188c4ead5e562
Signed-off-by: lijinhui <lijh_7@chinatelecom.cn>
Niyaz Murshed [Wed, 21 Feb 2024 19:52:31 +0000 (19:52 +0000)]
crypto-sw-scheduler: crypto-dispatch improvement
Currently sw_scheduler runs interchangeably over queues of one selected
type either ENCRYPT or DECRYPT, then switches the type for the next run.
This runs perfectly when we have elements in both ENCRYPT and DECRYPT
queues, however, this leads to performance degradation when only one
of the queues have elements i.e either all traffic is to be encrypted or
decrypted.
If all operations are encryption, then 50% of the time, the loop exits
without dequeueing.With this change, that dequeueing happens on every
loop. This increases the performance of single mode operation (ecryption
or decryption) by over 15%.
This change was also added in commit https://github.com/FDio/vpp/commit/
61cdc0981084f049067626b0123db700035120df
to fix similar performance issue when the crypto-dispatch node is in interrupt
node, however was removed by https://github.com/FDio/vpp/commit/
9a9604b09f15691d7c4ddf29afd99a31e7e31eed
which has its own limitations.
Type: improvement
Change-Id: I15c1375427e06187e9c4faf2461ab79935830802
Signed-off-by: Niyaz Murshed <niyaz.murshed@arm.com>
Anton Nikolaev [Thu, 22 Feb 2024 09:21:45 +0000 (09:21 +0000)]
linux-cp: fix seg fault in get_v2 methods
vl_api_lcp_itf_pair_get_v2_t_handler method was not be able to
handle invalid sw_if_index, it caused a seg fault.
With this fix, the method checks for an invalid sw_if_index and
sends error back to caller.
Type: fix
Change-Id: I4e89b0cab34f9109c4ce2689021ecfc2786055ab
Signed-off-by: Anton Nikolaev <anikolaev@netgate.com>
Florin Coras [Thu, 11 Apr 2024 01:31:57 +0000 (18:31 -0700)]
g2: fix gpointer cast complaints
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iadd6a4dd928002e764fc52343c14403620279aa7
Benoît Ganne [Mon, 8 Apr 2024 09:54:01 +0000 (11:54 +0200)]
stn: fix non-NULL terminated string overflow
Type: fix
Change-Id: I9d7e6dd099cf9f4b7f6bb06d9e8a17fac7d7e772
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Tue, 9 Apr 2024 10:03:53 +0000 (12:03 +0200)]
tcp: check for header truncation
Type: fix
Change-Id: I0a43a37971d03a700926d59e848f0b6e6dbeb19a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Tue, 9 Apr 2024 20:27:53 +0000 (13:27 -0700)]
session: add api to detach session from app
Type: improvement
Change-Id: Ib824d0ca9efc7d8967e043db69017655b2dcf6b5
Signed-off-by: Florin Coras <fcoras@cisco.com>
Benoît Ganne [Mon, 8 Apr 2024 14:49:06 +0000 (16:49 +0200)]
vlib: fix vlib_buffer_free_inline() AVX-512 overflow
'queue' is declared on the stack and must be big enough to handle
queue_size + max processed elements per loops.
When AVX-512 was added, this additional max was not increased from 4 to
8 accordingly.
Type: fix
Fixes:
767a9ab4b1
Change-Id: I15f2f930fc316f92da2e4642f41852d856c06a48
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Wim de With [Sun, 28 Jan 2024 10:05:15 +0000 (11:05 +0100)]
build: use GNUInstallDirs where possible
Some installation destinations were already converted to the
GNUInstallDirs standard in
e3cf4d0cf. This patch converts the share and
include directories (typically /usr/share and /usr/include respectively)
as well.
Type: improvement
Change-Id: Id481b16604f3f52203166a5c0647f43d6eb05239
Signed-off-by: Wim de With <wf@dewith.io>
Damjan Marion [Tue, 9 Apr 2024 12:37:25 +0000 (12:37 +0000)]
vppinfra: add support for precomputed SHA2 HMAC key and chained buffers
Change-Id: Ic1fa3bd164e80c2ca1146be001870da0238a5f2e
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
Maxime Peim [Tue, 9 Apr 2024 07:08:00 +0000 (09:08 +0200)]
tests: allow to add paths to default route
After adding a path to the default route, the prefix still be there
in the table as it is a mandatory prefix. However, the registry hence
fail to remove the route from VPP.
Type: fix
Change-Id: Ic4ad72455ac7a1a2f1d8baba59a7a3afe1610726
Signed-off-by: Maxime Peim <mpeim@cisco.com>
adrianvillin [Tue, 5 Dec 2023 10:47:00 +0000 (11:47 +0100)]
tests: Added a simple prom(etheus exporter) plugin test
Type: test
Change-Id: Ibceabc411f09d80cc23be6f2e7c8abd56d4c4ac2
Signed-off-by: adrianvillin <avillin@cisco.com>
Tom Jones [Tue, 6 Feb 2024 10:05:06 +0000 (10:05 +0000)]
build: Error out Makefile if bash can't be found
Type: improvement
Change-Id: I3bba4e53364dbcc0d7a373fdc9cac2db3bbb4249
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Thu, 14 Mar 2024 12:24:04 +0000 (12:24 +0000)]
acl: Use clib_net_to_host rather than library bswap
Type: improvement
Change-Id: I51345fb75843c67c6bf6a4c56380e1f0899c45b1
Signed-off-by: Tom Jones <thj@freebsd.org>
Benoît Ganne [Wed, 6 Mar 2024 18:02:18 +0000 (19:02 +0100)]
fib: fix off-by-one error in rewrite length check
The rewrite string can be up to max_size, and max_size can be up to
VNET_REWRITE_TOTAL_BYTES. Don't waste the last byte.
Type: fix
Change-Id: I2fb7e9873b6b4c1e6a55b172c7f753f3c5910802
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Vladislav Grishenko [Wed, 24 Jan 2024 11:17:23 +0000 (16:17 +0500)]
mpls: fix default mpls lb hash config
In case of multiple path within tunnel, mpls lookup node
computes lb hash with mpls_compute_flow_hash config value 0,
so only mpls label and l4 ports gets accounted, not 5-tuple.
This leads to flow traffic polarization and disbalance over
mpls paths.
Use mpls hash config from lb instead, usually it'll be
MPLS_FLOw_HASH_DEFAULT with 5-tuple plus flowlabel.
As optimization, fix flow hash reuse from the previous lookup
node if present, like ip_lookup does. Previously mpls lookup
always calcs the hash.
Test lb distribution for both cases.
Also, use the same flow hash hex format in ip4/ip6 and mpls
traces for easier reading, most code changes is due fixstyle
formatting.
Type: fix
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: Ib89e1ab3edec14269866fe825a3e887d6c817b7c
Pim van Pelt [Fri, 8 Mar 2024 08:27:40 +0000 (09:27 +0100)]
vnet: fix ARP for unnumbered
On unnumbered interfaces, ARP fails because there is no attached route.
Allow replies to peer-to-peer addresses on unnumbered interfaces:
eg. 192.0.2.1/32 <-> 192.0.2.2/32
Type: fix
Change-Id: Ibeb8d8ebc8d58d5bfb0724739a17694e0217356e
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Florin Coras [Fri, 5 Apr 2024 21:50:10 +0000 (14:50 -0700)]
tls: fix session state update on accept
Only set state to ready if session is not already closing.
Type: fix
Change-Id: Ic95667f43ed09d693f1cf7c9f1c16f7f995ea2d8
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dmitry Valter [Wed, 6 Mar 2024 22:43:27 +0000 (22:43 +0000)]
vppinfra: fix mask compare and compress OOB reads
Use mask_load_zero to avoid out-of-buffer reads in vectorized
function versions.
Type: fix
Signed-off-by: Dmitry Valter <d-valter@yandex-team.com>
Change-Id: I12bcb817ccf2db210c1c99fdfa444dc3f540035b
Damjan Marion [Fri, 29 Mar 2024 20:33:03 +0000 (21:33 +0100)]
octeon: fix memory ordering issue in tx batch free
Type: fix
Fixes:
01fe7ab
Change-Id: I4425e809f0977521ddecf91b58b26fe4519dd6e0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Fri, 5 Apr 2024 05:09:58 +0000 (22:09 -0700)]
session: fix cleanup for refused sessions
Type: fix
Change-Id: I739b7129c7e5a3fccefcdeeaf7f4a298223dd8eb
Signed-off-by: Florin Coras <fcoras@cisco.com>
Damjan Marion [Sat, 30 Mar 2024 13:56:51 +0000 (14:56 +0100)]
octeon: fix buffer free on full tx ring
Type: fix
Fixes:
01fe7ab
Change-Id: I4419107c4bcb7f85b76addfc62178b6e75e10a52
Signed-off-by: Damjan Marion <damarion@cisco.com>
Klement Sekera [Tue, 2 Apr 2024 10:51:10 +0000 (12:51 +0200)]
api: fix [un]formatting in vpp/api/types.c
vl_api_prefix_t.len is 1 byte only, but unformat %d writes 4 bytes
add helper functions unformat_u(8|16) which don't write more than
appropriate amount of bytes
fix other similar errors in vpp/api/types.c
Type: fix
Change-Id: I74a61a377147c373f8c25ed083052b2287763c39
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Maxime Peim [Thu, 4 Apr 2024 09:41:04 +0000 (11:41 +0200)]
ip6: fix icmp trace flag copy
Type: fix
Change-Id: I56c1a2717f197c889425449b37f51b0f2cc89ea5
Signed-off-by: Maxime Peim <mpeim@cisco.com>
Dave Wallace [Wed, 3 Apr 2024 16:31:42 +0000 (12:31 -0400)]
tests: upgrade python packages
Type: test
Change-Id: I01500466f3d15c79e38028677ce7e5c75d427fdc
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Matthew Smith [Tue, 2 Apr 2024 18:27:19 +0000 (18:27 +0000)]
tests: figure out correct version of sed to run
In run_in_venv_with_cleanup.sh, sed was changed to gsed to allow the
script to run properly on FreeBSD because the sed script uses an
expression that is specific to the gnu sed. Gnu sed is available to
be invoked as gsed on FreeBSD systems, but there is no executable or
symlink which allows sed to be run by the name gsed on ubuntu 22.04.
Check for the existence of gsed. If it's found, use it. Otherwise, just
use sed.
Type: fix
Fixes:
b3c863eae4
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Change-Id: I487197e486f500711aa3e87ec7ba899a53606b40
Florin Coras [Tue, 2 Apr 2024 02:51:22 +0000 (19:51 -0700)]
session: fix closing ntfs handling for refused sessions
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1464e93cd3020eaa26068df558924e39dd255ccb
Dave Wallace [Tue, 23 Jan 2024 04:05:39 +0000 (23:05 -0500)]
fib: coverity 335348 out-of-bounds access
- also fix memory leak in adj_glean_walk_proto()
Type: fix
Change-Id: I3cd72b14506e6bfc9d8d77a65d7b9b2703992367
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Dmitry Valter [Wed, 6 Mar 2024 17:17:54 +0000 (17:17 +0000)]
vppinfra: fix array_mask_u32 underrun
Properly handle small buffers in the AVX256 version of array_mask_u32.
Type: fix
Signed-off-by: Dmitry Valter <d-valter@yandex-team.com>
Fixes:
f62ed3f9c1ec3e8db36f63d6a54f46b7bea43723
Change-Id: Idf1cb43ccf37bd7c439d11e4f68fe30064c6d09a
Vladislav Grishenko [Sat, 13 Mar 2021 10:17:03 +0000 (15:17 +0500)]
api: fix rx timeout thread busy loop after reconnect
After memclnt api client disconnect, read timeout is set to zero
and stays the same even after same client reconnect. It causes
client process to spin in timeout loop up to 100% cpu.
Fix it by resetting timeout process state upon every (re)connect.
Type: fix
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: I56812972a69c343f869eebbdfebdcbefd3d201e0
Dan Geist [Wed, 13 Mar 2024 15:24:05 +0000 (11:24 -0400)]
map: BR rule lookup update
Update to the MAP rule lookup (in IPv6) based on the rule's source
prefix instead of DMR
Type: improvement
Per RFC, the DMR is allowed to serve multiple MAP Basic Mapping Rules, but this
capability was prevented by the above logic.
Updates to the code include populating a new hash table based on the MAP rule
ip6 prefix and length, changing several functions to reference this new table,
and slight alterations to a few functions regarding pre-lookup bitmasking.
All changes are commented with [dgeist] and are in need of peer review,
especially the bitmask alterations.
An attempt was made at generating an additonal MAP rule in the test_map_br test
harness, but the coding appears very much oriented towards testing just one
rule. I would appreciate suggestions on how to test multi-rule cases.
Issue: VPP-2111
Change-Id: Id1fea280eba625e23cd893575d9b63aac7f48405
Signed-off-by: Dan Geist <dan@polter.net>
Dave Wallace [Fri, 15 Mar 2024 01:41:00 +0000 (21:41 -0400)]
misc: in crcchecker.py, don't check for uncommitted changes in CI
Type: fix
Change-Id: I63260a953e54518b3084b62fccdb4af81315b229
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Klement Sekera [Mon, 25 Mar 2024 14:23:55 +0000 (15:23 +0100)]
vapi: avoid memory leak
Erase removed elements to avoid memory leaks.
Type: fix
Change-Id: I1605bea8df7e08455691364efb0a12eb0d9dae93
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Georgy Borodin [Wed, 25 Oct 2023 23:44:12 +0000 (01:44 +0200)]
lb: fix using vip after free
fix use of vip after it was deleted
Type: fix
Fixes:
041eacc81656d2ed5bc01b96b15a7d03a1700f13
Change-Id: I5723485c5da7507fbc6c86ff6eb9f77127439f67
Signed-off-by: Georgy Borodin <bor1-go@yandex-team.ru>
Tom Jones [Wed, 7 Feb 2024 13:36:53 +0000 (13:36 +0000)]
tests: Use gnu sed explicitly in test setup/tear down
Type: improvement
Change-Id: Ie79fd8a5bcfd72a97bf460ef6437913ac34f439c
Signed-off-by: Tom Jones <thj@freebsd.org>
Tom Jones [Wed, 7 Feb 2024 13:26:41 +0000 (13:26 +0000)]
tests: Add missing socket imports in tests
Type: fix
Change-Id: I646f96517d3bda5c0f5644e6bb89ade7818fc466
Signed-off-by: Tom Jones <thj@freebsd.org>
Vladislav Grishenko [Wed, 24 Jan 2024 15:33:12 +0000 (20:33 +0500)]
l2: fix vxlan src port entropy with mpls payload
l2 tunnels like vxlan, gtpu, geneva use vnet_l2_compute_flow_hash() to
compute flow hash for udp src port entropy. In case of inner mpls tunnels
to the same lsr ethernet src and dst macs are the same, so l2 flow hash
is also the same leading to no src port entropy and the only rss queue
overflow on receiver side.
Fix it for all the possible vnet_l2_compute_flow_hash callers by making
mpls playload hash in additon to ip4/ip6. Visible performance impact is
not expected as it's only one check for mpls ethertype for common cases.
Type: fix
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: I69153d42fb3d7c094a670c674fac8d14039c626a
Vladislav Grishenko [Sat, 7 Oct 2023 18:04:03 +0000 (23:04 +0500)]
linux-cp: add support for tap num queues config
This change allows to limit lcp interface queues
to be used by explicit host interface workers.
Type: improvement
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: I0626f66021e5a5f251470156231dc44ddaea5ee6
Jon Loeliger [Fri, 22 Mar 2024 17:22:36 +0000 (12:22 -0500)]
fib: add early config support for IP and IP6 default FIB table names
Type: improvement
Change-Id: I8c248d9e224bd069b641a174da57d448371470af
Signed-off-by: Jon Loeliger <jdl@netgate.com>
Tom Jones [Thu, 8 Feb 2024 14:59:03 +0000 (14:59 +0000)]
vhost: Only enable plugin on Linux
Type: improvement
Change-Id: I6cf5adbd609d911e15dcc6d976cda4ad21ce89ad
Signed-off-by: Tom Jones <thj@freebsd.org>
lijinhui [Thu, 22 Feb 2024 03:16:10 +0000 (11:16 +0800)]
vlib: fix counter_index check
Ensure counter index is valid before using it to lookup
the counter.
Type: fix
Change-Id: I423c7a6aa6b65f6367b18d8e99cf40f52e06b416
Signed-off-by: lijinhui <lijh_7@chinatelecom.cn>
Damjan Marion [Wed, 27 Mar 2024 21:53:21 +0000 (22:53 +0100)]
octeon: specify pool when alloc buffers
Type: fix
Fixes:
01fe7ab
Change-Id: I72fdaca250468d91a31efcce2fb447c97ba49dc7
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 27 Mar 2024 21:19:15 +0000 (22:19 +0100)]
octeon: refill even if nothing dequeued from rx queue
It may happen that rx queue is empty of free buffers due to previous
alloc failure.
Type: fix
Fixes:
01fe7ab
Change-Id: I344dcda11525444bd1358b3d36ffdf8ab9aa2677
Signed-off-by: Damjan Marion <damarion@cisco.com>
Kai Ji [Thu, 28 Mar 2024 17:21:37 +0000 (17:21 +0000)]
ipsec: fix clang compile issue
Type: fix
Change-Id: Ic015b37e18a43c49c3fb3dbff284a17fa2c5fd99
Signed-off-by: Fan Zhang <fanzhang.oss@gmail.com>
Signed-off-by: Kai Ji <kai.ji@intel.com>
Florin Coras [Fri, 29 Mar 2024 22:39:58 +0000 (15:39 -0700)]
tls: fix rescheduling when no data available
Don't force tx rescheduling of tls session if no forward progress is
made. The session will still be rescheduled by the session infra if
there's pending tx data.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic57b6ee79969055cec782938668c054bcc39f206
Florin Coras [Sat, 30 Mar 2024 01:28:35 +0000 (18:28 -0700)]
session: fix api coverity warnings
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ieb4e9d9e39b937ad4c7316b3955b3ca296f0a191
Florin Coras [Fri, 22 Mar 2024 23:29:09 +0000 (16:29 -0700)]
session: add new api for enq tx io events
Type: improvement
Change-Id: Iefe5c2e610a26241a88ca783ac548fd8f2317bb0
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 29 Mar 2024 03:07:31 +0000 (20:07 -0700)]
session: use custom types for session flags and state
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I04f836d09a1cbd5a5b55dc64359d2d761dfc4988
Florin Coras [Fri, 4 Aug 2023 23:14:01 +0000 (16:14 -0700)]
session: improve use of session handles
First step towards moving to an 8 byte struct instead of u64.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Idd0b95520ab7158e175b9af1702fc09c0613a4bb