Ahmed Abdelsalam [Mon, 11 Nov 2024 11:14:03 +0000 (05:14 -0600)]
sr : adding support to SRv6 uA behavior
Type: feature
Change-Id: I81f6b07226eeaa6c3cd62487c9665629f4d2a834
Signed-off-by: Ahmed Abdelsalam <ahabdels@cisco.com>
Steven Luong [Wed, 6 Nov 2024 21:47:26 +0000 (13:47 -0800)]
session: validate appns index in vnet_session_rule_add_del
vnet_session_rule_add_del may be called with a bogus appns index
from the API. Validate the appns index is indeed valid.
Type: fix
Change-Id: Ife1b5b9ab0b180ececa74008d2ef92045a9e8b58
Signed-off-by: Steven Luong <sluong@cisco.com>
Florin Coras [Thu, 7 Nov 2024 21:44:02 +0000 (13:44 -0800)]
hsa: proxy fix assert placement
Assert fifo refcnt on the right thread
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If6edf9969f5c70533a1e9c6358c022c556c4ed81
Damjan Marion [Wed, 23 Oct 2024 14:18:18 +0000 (16:18 +0200)]
armada: initial DSA support
Type: feature
Change-Id: Ic6578e0ded33ca3c6590c8e6127ec11a0f5b3057
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Tue, 8 Oct 2024 18:50:56 +0000 (20:50 +0200)]
dev: secondary interfaces support
Type: feature
Change-Id: I6cc4340431b8273022955fca1600061a722e3ace
Signed-off-by: Damjan Marion <damarion@cisco.com>
Marcel Cornu [Wed, 6 Nov 2024 12:57:34 +0000 (12:57 +0000)]
crypto-ipsecmb: bump to ipsecmb v2.0
Type: feature
This patch bumps ipsecmb library version from 1.5 to 2.0
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
Change-Id: Iceb546cbb00cbd92cab7edeb85f9545284fcbd4c
Mohammed Hawari [Wed, 6 Nov 2024 16:13:02 +0000 (17:13 +0100)]
dev: introduce consistent_qp feature
For some devices, queues are organized as pairs (rx/tx). In this case,
it is desirable that a worker receives packet and send packets for the
same pair. This patch enables this by assigning txq to workers first
and ending with main.
Change-Id: I3de4afbf74a265d5275c6a5d9a905b51dd661b22
Type: feature
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Steven Luong [Tue, 22 Oct 2024 17:44:07 +0000 (10:44 -0700)]
session: session table holding free appns index
session table may be shared among multiple appns's.
app ns add id blue secret 1 if tap0
app ns add id red secret 1 if tap0
session table holds the last added app_ns's appns_index.
If the last app_ns is deleted, session table is not free
since there is still an appns which uses the same session
table. In that case, session table is holding the free
app_ns's appns_index and it can cause problem.
The fix is to modify appns_index in session table to hold
a vector of appns_index's instead of just the appns_index
that was last added. When the app ns is deleted, remove the
deleted appns_index from the session table's vector of
appns_index's.
Type: fix
Change-Id: Ied8bc97f185071dc89b9b56656e18efbd2995131
Signed-off-by: Steven Luong <sluong@cisco.com>
Florin Coras [Tue, 5 Nov 2024 05:47:09 +0000 (21:47 -0800)]
svm: mq use poll instead of SO_RCVTIMEO
setsockopt does not work on eventfds
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I652a2b78160abe1bc15879fd8bc320ba4ef38e63
Adrian Villin [Wed, 28 Aug 2024 07:34:14 +0000 (09:34 +0200)]
hsa: added GET method to client
Type: improvement
Change-Id: I46f7e1e2b509a463ff4b2492bf6412b67a1afdc4
Signed-off-by: Adrian Villin <avillin@cisco.com>
Matus Fabian [Fri, 20 Sep 2024 14:34:59 +0000 (16:34 +0200)]
http: CONNECT method for tunnelling
Type: improvement
Change-Id: I6af16ddcc6734bb831227ce65cb39e87294fc4cd
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Dave Wallace [Fri, 1 Nov 2024 20:11:02 +0000 (16:11 -0400)]
http: fix invalid listener handle timeout config
- Fixes this assert() in make test-debug testcase:
make test-debug TEST=test_http_static.TestHttpStaticVapi.test_http_static_vapi
...
vpp[441]: /vpp/src/vppinfra/tw_timer_template.c:301 (tw_timer_start_2t_1w_2048sl) assertion `interval' fails
Type: fix
Change-Id: Ic6040957f48ab578affa5b1cf7dfdf4be27c4c56
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Florin Coras [Wed, 23 Oct 2024 21:19:31 +0000 (14:19 -0700)]
vcl: fix vls mt detection and select handling
Make sure num threads is 1 on process create and fork. Multi-thread
locks are applied once num threads exceeds 1.
For select, follow same pattern like epoll and add check for session
migration.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I1edcd6c4c81b6b3caf8b00781b339414e8945b0e
Mohammed Hawari [Wed, 30 Oct 2024 18:17:07 +0000 (19:17 +0100)]
virtio: introduce the consistent-qp feature
In certain usecases related to Linux legacy pinning of flows on queue
pairs, it is desirable that, for a given index, the rx and tx virtio
queue be handled by the same worker. This change introduces a flag for
virtio and tap interfaces that allow such a mapping.
Example with two workers rxq 0 and txq 0 on worker 0
rxq 1 and txq 1 on worker 1
txq 2 on main thread
Change-Id: I1b74a4788843fd1d0e8dcb4e9da30e609e088fe3
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: improvement
Steven Luong [Thu, 24 Oct 2024 17:36:10 +0000 (10:36 -0700)]
session: sesssion_rule_add_del API parsing port in wrong order
The convention in the binary API is that fields encoded in network order.
For some reason, port was parsed in host order.
Type: fix
Change-Id: I31ea313937097e2547226566b7869be4e28251b8
Signed-off-by: Steven Luong <sluong@cisco.com>
Matus Fabian [Wed, 30 Oct 2024 17:04:40 +0000 (18:04 +0100)]
http: udp proxy uri template parsing
Parse a URI template that has variables "target_host" and "target_port",
where varaibles are at the end of the path:
"/{target_host}/{target_port}/".
Type: improvement
Change-Id: I440b7f4951bffa1fd9971740b9890b221193943b
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Gabriel Oginski [Fri, 11 Oct 2024 10:47:56 +0000 (10:47 +0000)]
ipsec: fix UDP flow in ipsec inbound policy
This patch fixes handle with UDP packages for UDP-Encapsulated ESP
and IKE traffic in inbound policy.
Orignally IKE traffic on UDP with port 4500 is dropped inside inbound
look-up.
Type: fix
Change-Id: I071adf18cb82da8cd000b93914078e51e393104c
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Florin Coras [Mon, 28 Oct 2024 18:49:34 +0000 (11:49 -0700)]
udp: connected mode only for connects
Treat all connects as connected udp sessions. Connectionless udp is only
possible with listeners.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I0a75b7c85b72274df909ed3b114eed4f6519477e
Florin Coras [Tue, 29 Oct 2024 08:21:08 +0000 (01:21 -0700)]
session: improve migration rx ntf
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I0dd002f923908c4b9244c2c47fc85fa8855d54e1
Florin Coras [Tue, 29 Oct 2024 03:15:34 +0000 (20:15 -0700)]
hsa: proxy support for connected for udp
- mark listener as connected to support udp proxying. Connectionless udp
proxying is possible but would need more work on rx path.
- add support for session migration
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia6911ad728b7718a4983152d144e2566998e35c2
Matus Fabian [Tue, 29 Oct 2024 14:06:49 +0000 (15:06 +0100)]
http: "absolute-form" target URL parsing
Type: improvement
Change-Id: If39680a148d39add40433547369b2ddad3c2e226
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Mon, 28 Oct 2024 09:12:31 +0000 (10:12 +0100)]
http: timeout docs
Type: docs
Change-Id: I3dd9a726b862e72458a8f83c62354411d2c89d07
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Mon, 28 Oct 2024 09:30:16 +0000 (10:30 +0100)]
http_static: always free ext_cfg
Type: fix
Change-Id: I655e93c0f1e1de65d6d3c3e0976e25a7ce11aafc
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Stanislav Zaikin [Fri, 4 Oct 2024 15:43:55 +0000 (17:43 +0200)]
af_xdp: api cleanup
remove deprecated api handlers
Type: improvement
Change-Id: Id53d94f9d5fe46eba3ed809e4c16136c0eb2befc
Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
Ole Troan [Mon, 9 Sep 2024 07:17:37 +0000 (09:17 +0200)]
vppapigen: fix f-string in crcchecker
Type: fix
Change-Id: I9ae35b34cfd7de96726aa0b45987a896783ef7e0
Signed-off-by: Ole Troan <otroan@employees.org>
Matus Fabian [Thu, 24 Oct 2024 12:59:56 +0000 (14:59 +0200)]
hsa: http cli client ho session cleanup
Type: improvement
Change-Id: I9266dac18ad3ee57fc8ecca3614b51b2345e9c48
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Thu, 17 Oct 2024 11:41:51 +0000 (13:41 +0200)]
http: pass timeout using extended config
App can now pass http connection timeout using extended configuration,
ext cfg type TRANSPORT_ENDPT_EXT_CFG_HTTP, value (in seconds) set in ext
cfg member opaque.
It is optional, default value is 60 seconds.
Type: improvement
Change-Id: Ibeff4bbd3153421be350ff564ec3c8e52e5b9639
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Florin Coras [Fri, 25 Oct 2024 06:09:13 +0000 (02:09 -0400)]
vcl: fix get tx fifo len attr
Type: fix
Change-Id: I9b47600486b03c4c2cd031ed1f0faf6c28864fe4
Signed-off-by: Florin Coras <fcoras@cisco.com>
Matus Fabian [Wed, 16 Oct 2024 13:29:36 +0000 (15:29 +0200)]
session: support of multiple extended configs
This allow configuration for each transport protocol when combined,
e.g. HTTPS=HTTP+TLS.
Extended config of session endpoint config is now chunk of memory,
which allow seamless integration with VCL, and internal
representation is hidden behind APIs, which is better for
future improvements. By default chunk is allocated to 512B if the
app doesn't do so before.
Type: improvement
Change-Id: I323f19ec255eba31c58c06b8b83af45aab7f5bb1
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Ole Troan [Wed, 23 Oct 2024 19:13:19 +0000 (21:13 +0200)]
dhcp: client use mac address as client identifier
Previously the DHCP client use a constant client identifier (vpp 1.1).
Problem with that is that multiple VPP clients on the same link would
fail. Fixed by using MAC address instead.
Type: improvement
Change-Id: If37f4a14cc728bde6c9ef6c169957562d763c973
Signed-off-by: Ole Troan <otroan@employees.org>
Florin Coras [Thu, 24 Oct 2024 01:59:07 +0000 (21:59 -0400)]
hsa: support vcl server binding to ip
Type: improvement
Change-Id: I4d64cddaa372aecaee8bb3eaf244c8d4998f490c
Signed-off-by: Florin Coras <fcoras@cisco.com>
Steven Luong [Fri, 4 Oct 2024 17:54:48 +0000 (10:54 -0700)]
hsa: add appns support to http cli server
When the last listener is deleted, detach the cli server.
The appns is determined and should be entered when the cli
server is first brought up. When adding an additional listener
subsequently, appns must not be specified.
Type: improvement
Change-Id: Idac5b1f89df2aeca6734ab4532ebade0659fc357
Signed-off-by: Steven Luong <sluong@cisco.com>
Stanislav Zaikin [Wed, 9 Oct 2024 07:21:56 +0000 (09:21 +0200)]
vapi: fix uds connect error handling
Type: fix
Change-Id: I846b54408991d34f73735914a4a673d4ee966afd
Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
Damjan Marion [Thu, 24 Oct 2024 09:40:13 +0000 (11:40 +0200)]
armada: fix rxq buffer pool assignment
Type: fix
Change-Id: I5a78804986f400f8adc7f58f25fe5d7989a926ea
Signed-off-by: Damjan Marion <damarion@cisco.com>
Klement Sekera [Wed, 23 Oct 2024 17:05:17 +0000 (19:05 +0200)]
ip: fix port extraction
Replace a hard-coded constant of 64 with 56, which is a more appropriate
value for when ICMP echo request is returned in ICMP error. Previously,
the size of such message would be smaller than 64 and parsing would not
return the correct value.
Type: fix
Change-Id: I1bdf8a2a23b1e6762b64210c71927c926f4547ad
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 19:36:50 +0000 (21:36 +0200)]
dev: use typedefs in dev.h
Type: refactor
Change-Id: Ieb50d79bd7b9f0a59faf26a4f5bce3f89f25b287
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 18:56:27 +0000 (20:56 +0200)]
dev: keep dev_instance data in struct
Type: refactor
Change-Id: I05d04e2e9872d025384524b1bc133d909581e18a
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 16:46:51 +0000 (18:46 +0200)]
dev: fix typo in function name
vnet_dev_get_port_rx_node_idex -> vnet_dev_get_port_rx_node_index
Type: fix
Change-Id: I9a90e5822cbc93bcf2f91244b4eb4e5fff53c212
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 16:38:18 +0000 (18:38 +0200)]
dev: _with_ptr process node calls
Type: improvement
Change-Id: Ib392d74e7629cef5d335e4320a71ceec25ddb020
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 13:35:49 +0000 (15:35 +0200)]
armada: port and queue counters
Type: improvement
Change-Id: I221253be147e99cd082911f28d088b64ca96eff5
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 13:19:46 +0000 (15:19 +0200)]
dev: add more units for counters
Type: improvement
Change-Id: If6f70fc34f47c31a986ba837c9a35ce139decfb1
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Damjan Marion [Wed, 23 Oct 2024 13:34:41 +0000 (15:34 +0200)]
armada: fix typo
Type: fix
Change-Id: I1c1eb9d7426086bb8023867b3118ece119bca05b
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Artem Glazychev [Wed, 17 Jul 2024 09:48:45 +0000 (16:48 +0700)]
dhcp: fix buffer length after adding new option
The size of dhcp option should be o.length + 2 additional bytes of the header.
Incorrect offset results in an extra byte at the end of the packet:
...
0120 04 00 00 00 04 05 04 AC 10 04 01 FF 00
...
RFC2131 says the last should be the 'end' option (ff)
Type: fix
Change-Id: I056d755d29465aab8c1c55a0b930f65ece6fafce
Signed-off-by: Artem Glazychev <glazychev@mts.ru>
Damjan Marion [Thu, 17 Oct 2024 14:52:08 +0000 (16:52 +0200)]
armada: set prinary address support
Type: improvement
Change-Id: I280cb3961ff4b18c6e02053c7526c19570add09d
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Dave Wallace [Tue, 27 Aug 2024 00:55:49 +0000 (20:55 -0400)]
build: fix gcov failure on ubuntu 24.04
Type: make
Change-Id: Ieee6562de4b9f68d701c27a3c3018431b28eb3b0
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Stanislav Zaikin [Mon, 7 Oct 2024 16:28:42 +0000 (18:28 +0200)]
vapi: fix mem leak on uds transport
Type: fix
Change-Id: I08b990eb2ede3c26e0981de033daa4cc6bd1af8e
Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
Lukas Vogel [Tue, 1 Oct 2024 06:32:36 +0000 (08:32 +0200)]
docs: fix statseg title in config reference
Fix typo and put it on the correct level.
Type: fix
Change-Id: Ic7a8e557b22d0060d7f072132f00564e29d8e860
Signed-off-by: Lukas Vogel <vogel@anapaya.net>
Tom Jones [Fri, 18 Oct 2024 15:12:59 +0000 (15:12 +0000)]
docs: Add FreeBSD Quick Start to README.md
Type: docs
Change-Id: I5b69d6638721586f503cbb5d516b7b4d52e2f2d7
Signed-off-by: Tom Jones <thj@freebsd.org>
Mohsin Kazmi [Mon, 21 Oct 2024 16:54:27 +0000 (16:54 +0000)]
pg: fix the buffer leak when pa steams are deleted
Type: fix
vpp# sh buffers
Pool Name Index NUMA Size Data Size Total Avail Cached Used
default-numa-0 0 0 2304 2048 128270 125968 1108 1194
default-numa-1 1 1 2304 2048 128270 128270 0 0
vpp# sh pa
Name Enabled Count Parameters
pg0-test-0 No
60900431 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 0,
pg1-test-0 No
60900385 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 0,
pg0-test-1 No
60898008 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 1,
pg1-test-1 No
60897934 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 1,
pg0-test-2 No
60900278 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 2,
pg1-test-2 No
60900184 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 2,
pg0-test-3 No
60900431 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 3,
pg1-test-3 No
60900387 limit -1, rate 1.00e6 pps, size 64-64, buffer-size 2048, worker 3
vpp# pa delete pg0-test-0
vpp# pa delete pg0-test-1
vpp# pa delete pg0-test-2
vpp# pa delete pg0-test-3
vpp# pa delete pg1-test-0
vpp# pa delete pg1-test-1
vpp# pa delete pg1-test-2
vpp# pa delete pg1-test-3
vpp# sh buffer trace verbose
Pool Name Index NUMA Size Data Size Total Avail Cached Used
default-numa-0 0 0 2304 2048 128270 126650 1620 0
default-numa-1 1 1 2304 2048 128270 128270 0 0
Node Allocated Freed In Out Buffered
unix-cli-process-0 0 1194 0 0 -1194
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I03051a8f529df7801cf08f8374a994dbc00fc972
Matthew Smith [Wed, 25 Sep 2024 16:26:58 +0000 (11:26 -0500)]
dpdk: validate number of tx descriptors
The default number of tx descriptors per queue is 1024. On some device
types, this is larger than the maximum allowed value and
rte_eth_tx_queue_setup() can return an error. Compare the configured
value to the maximum value for each device and set the configured
value to the maximum value if the configured value is larger.
Type: improvement
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Change-Id: Ie29c5c6d58c76388f65f266032821140b0f879fb
Ivan Ivanets [Thu, 10 Oct 2024 13:51:03 +0000 (16:51 +0300)]
tests: remove tag_fixme_ubuntu2204
Type: test
Activate tests that works successfully on ubuntu 22.04 but were
problematic on later version and were excluded by
@tag_fixme_ubuntu2204
Change-Id: I93c4626a120ce8b475e9c5ca933a5544d6337933
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
Florin Coras [Fri, 18 Oct 2024 07:46:57 +0000 (00:46 -0700)]
hsa: refactor proxy to minimize lock usage
Use per worker context to minimize proxy session lock usage for io
events.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia0ea204a8b09f72300fd40745b299246d5d0ddb7
Jerome Tollet [Thu, 17 Oct 2024 06:07:56 +0000 (08:07 +0200)]
crypto-native: adding missing ciphers
Type: docs
Change-Id: I23a15e1ecd4c41f6567299aa07bb5458d468acf8
Signed-off-by: Jerome Tollet <jtollet@cisco.com>
Nithinsen Kaithakadan [Fri, 16 Feb 2024 06:28:04 +0000 (11:58 +0530)]
octeon: add crypto framework
Configure crypto device.
Add crypto support in control plane and data plane.
Control plane
- Handle vnet crypto key add and delete
- Register crypto async enqueue and dequeue handlers
Data plane
- Add encryption and decryption support for
- AES-GCM
- AES-CBC hmac sha1/256/384/512
- AES-CTR sha1
- 3DES-CBC md5 sha1/256/384/512
Type: feature
Signed-off-by: Nithinsen Kaithakadan <nkaithakadan@marvell.com>
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Change-Id: Ia9e16c61ed84800a59e0c932a4ba6aa1423c1ec8
Abdel Baig [Tue, 3 Sep 2024 15:52:20 +0000 (11:52 -0400)]
bfd: add support for multihop
Type: feature
Change-Id: If23f9cc9317e7528f3c8d66303457206843a12c5
Signed-off-by: Abdel Baig <abdbaig@cisco.com>
Adrian Villin [Tue, 15 Oct 2024 12:56:16 +0000 (14:56 +0200)]
hs-test: various improvements
- fixed timed out/panicked tests not copying logs to CI archives
- fixed log formatting
- renamed SuiteTimeout to TestTimeout
- fixed ginkgo node leak on test timeout -> added AssertChannelClosed
- updated docs
Type: test
Change-Id: Ia71d765bd61576230a4cfd26d4b14fd1be1692c7
Signed-off-by: Adrian Villin <avillin@cisco.com>
Florin Coras [Tue, 15 Oct 2024 02:43:42 +0000 (19:43 -0700)]
hsa: switch proxy to using first worker connects
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I04821236ba8ab02525bd99a1ed4572dfcf5e5131
Matus Fabian [Tue, 8 Oct 2024 18:06:32 +0000 (20:06 +0200)]
http: Content-Length value parsing improvement
Type: improvement
Change-Id: Ida8ca43b5fed41fc0b13a2dde97e7e35c55283c9
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Damjan Marion [Mon, 14 Oct 2024 15:43:04 +0000 (17:43 +0200)]
vppinfra: fix page stats for large heaps
Type: fix
Fixes:
6bfd076
Change-Id: I8da83a8a755e5893da627c0555039c62975a5e84
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
Matus Fabian [Tue, 8 Oct 2024 11:58:37 +0000 (13:58 +0200)]
hs-test: http_static wrk tests
Type: test
Change-Id: I87cddb88f2a62e79d66832827134ddaa95740839
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Fri, 4 Oct 2024 12:35:26 +0000 (14:35 +0200)]
http: timer pool assert crash fix
Two iterations over expiret timers:
1) ivalidate timer handle and mark the connection as having a pending
timer
2) send RPCs to workers
Type: fix
Change-Id: Iadc031c4e6d6f7bbd851d0421e6e0ea2d2b5e70f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Matus Fabian [Wed, 9 Oct 2024 18:30:41 +0000 (20:30 +0200)]
http: track half-open sessions
It might happen that app detach during connecting period and worker
is not valid anymore when http_ts_connected_callback is called.
Type: improvement
Change-Id: I95f094e8bc0352728a61e3fe74ab0745859e2457
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Stanislav Zaikin [Mon, 14 Oct 2024 10:42:44 +0000 (12:42 +0200)]
ip: fix ip_local_reassembly_get handler
Type: fix
Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
Change-Id: I6431557d01756174005df26350c28299f83fcee0
Alexander Skorichenko [Tue, 8 Oct 2024 09:38:07 +0000 (11:38 +0200)]
snort: add timestamps to packets
Type: improvement
Change-Id: I810679c8a73c4d1b3fc2cc2300ded46a30d68e8f
Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
Adrian Villin [Wed, 25 Sep 2024 12:49:11 +0000 (14:49 +0200)]
hs-test: added dry run mode
- DRYRUN=true will set up most containers. Some need to be started
manually (curl, nginx...). The framework will create a vpp-config
file with interface configs that will get executed on VPP startup.
- set Ginkgo to use -v instead of -vv when running a single test
- s.Log() now supports formatting
- added 'useEnvVars' parameter to container.Exec
Type: test
Change-Id: Id1da7947a1448ee4b74b86cc4f243442256a5ba8
Signed-off-by: Adrian Villin <avillin@cisco.com>
Ole Troan [Thu, 20 Jun 2024 20:33:19 +0000 (22:33 +0200)]
dpdk: xstats as symlinks
Type: improvement
Change-Id: I0df26e5a4d486b694ec90ba27b485a75bf264b20
Signed-off-by: Ole Troan <otroan@employees.org>
Adrian Villin [Wed, 9 Oct 2024 09:03:35 +0000 (11:03 +0200)]
hs-test: support running multiple specific tests
- make test TEST=[test1],[test2] runs those two tests in random order
Type: test
Change-Id: I1a1af7c99ef7867ca94cec4175605f428dcd58fd
Signed-off-by: Adrian Villin <avillin@cisco.com>
Damjan Marion [Tue, 8 Oct 2024 18:47:38 +0000 (20:47 +0200)]
vppinfra: devicetree improvements
Type: improvement
Change-Id: If20ae74658702399f626b1af7bd3519e05a5d422
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Tue, 8 Oct 2024 21:14:49 +0000 (23:14 +0200)]
dev: add helper functions
Type: improvement
Change-Id: I7c9e882b1cdf141b34e84dbfed46b392624d1f62
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Tue, 8 Oct 2024 21:51:28 +0000 (23:51 +0200)]
armada: fix tx queue init
Type: fix
Fixes:
4e51841
Change-Id: Ife3cb43f54cc0700c469f89b0a5af0ff44143807
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Mon, 7 Oct 2024 21:53:04 +0000 (21:53 +0000)]
pg: fix the coverity warning
Type: fix
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: Ida88c304f110b05051211ce243fd04ce811a9d4d
Florin Coras [Mon, 7 Oct 2024 19:32:22 +0000 (12:32 -0700)]
http_static: fix first and add segment size
Allow segments bigger than 4GB
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I510f7cff75883fdbd6c0c22efff9a14e26c755f4
Steven Luong [Mon, 7 Oct 2024 19:02:45 +0000 (12:02 -0700)]
hsa: cannot delete/unlisten default uri
Although it is rare that one wants to remove the default uri listener,
we should still support it.
The problem is that we strip the null character on unformatting the input.
We should not add a null character on formatting the default uri.
Type: fix
Change-Id: I08520dbd2a2448639ce023f9fd75555bc620e7ee
Signed-off-by: Steven Luong <sluong@cisco.com>
Matus Fabian [Mon, 7 Oct 2024 10:56:32 +0000 (12:56 +0200)]
hs-test: force test failure when vpp core present
Type: test
Change-Id: I874ee185a51dda9b620f3b783e466b8e88600d18
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Klement Sekera [Fri, 19 Apr 2024 07:15:01 +0000 (09:15 +0200)]
ip: add extended shallow reassembly
This patch adds some fixes and improvements:
Fixes bug where save_rewrite_length gets overwritten on reassembly
handoff.
Fixes bug where duplicate fragments could cause a reassembly context
to be lost, because the race losing thread would remove bihash entry
created by winning thread.
Improves tracing by adding more events.
Adds extended shallow reassembly. This is a toggleable option, which if
turned on will cause reassembly to wait for both first and last
fragments to calculate total IP payload length. Furthermore it'll store
a local copy of first fragment and necessary data to retrieve it in
vnet_buffer2. This allows downstream features to access full L3/L4
headers when dealing with fragments.
Type: fix
Change-Id: I81695070533410c5815291dbc65ea71c87e3ae05
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Klement Sekera [Mon, 7 Oct 2024 11:05:12 +0000 (13:05 +0200)]
ip: fix feature logic
This fixes ip6 feature logic, so error and handoff packets are no longer
sent to next feature instead of being dropped/handed off.
Type: fix
Change-Id: If280de5345d9ed3b553dd3b3fa40274619d333ae
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Klement Sekera [Sat, 13 Apr 2024 09:04:23 +0000 (11:04 +0200)]
ip: add ip6 shallow reassembly output feature
Type: improvement
Change-Id: I0cb4014f03abdd0e55d4bb7ff40ae293a6ed3562
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Klement Sekera [Tue, 19 Mar 2024 10:06:59 +0000 (11:06 +0100)]
vapi: don't store dict in length field
Rather validate the format and use proper Field call.
Type: fix
Fixes:
d7a32ebd9948ff37c15d8b6e0e5d9cf243026239
Change-Id: I78ac1e62911d613dc0d7a9bd6e8784fbe7f0a797
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Klement Sekera [Sat, 13 Apr 2024 09:03:49 +0000 (11:03 +0200)]
ip: fix ip4 shallow reassembly output feature handoff
Use a new frame queue for output feature instead of passing frames
to standard feature.
Fixes bug where save_rewrite_length gets overwritten on reassembly
handoff.
Type: fix
Change-Id: I6c6191aec5f1c89e1ca0510a08781e390d327bbf
Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
Mohsin Kazmi [Thu, 3 Oct 2024 23:18:17 +0000 (23:18 +0000)]
pg: add support to delete pg interface
Type: improvement
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I3102fded415c644673fb79a0fdb7a7448ce20f26
Florin Coras [Thu, 3 Oct 2024 07:34:03 +0000 (00:34 -0700)]
session vcl: add support for vcl transport attributes
Session layer can push transport attributes to vcl sessions which are
stored as vector for session lifetime.
Store original_dst_ip and port when available in vcl session attribute
vector.
Type: feature
Change-Id: Iab6c65ddcfed220fc919f564cd19083561812faf
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 4 Oct 2024 05:06:02 +0000 (01:06 -0400)]
hs-test: fix core_pattern volume mounts
If system is configured to use something like apport, avoid mounting.
Type: fix
Change-Id: I6af900bd334acba974c9c4ae30c3b2ce26d1f49b
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Thu, 3 Oct 2024 20:54:05 +0000 (13:54 -0700)]
session: use proper name for ct transport
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iebf5155a429c77143df9eb44f504fea28cddaf98
Matus Fabian [Wed, 2 Oct 2024 07:00:19 +0000 (09:00 +0200)]
hs-test: prom consecutive connections test
Type: test
Change-Id: Ide4571dd8ac9bcb64fcd5ba408b6d1f99d34185f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Adrian Villin [Thu, 19 Sep 2024 15:19:39 +0000 (17:19 +0200)]
hs-test: added nginx multi-thread tests
- added Dockerfile.envoy
- removed nginx vcl.conf file as it's created by
the framework now
Type: test
Change-Id: I5f2be015c864c8d2aa938a22b1abece64989999b
Signed-off-by: Adrian Villin <avillin@cisco.com>
Florin Coras [Thu, 3 Oct 2024 08:19:24 +0000 (01:19 -0700)]
session: allow session input rpcs
Type: improvement
Change-Id: Ib8e9f9fb6dfc553cc9e344544961832fecbea8c1
Signed-off-by: Florin Coras <fcoras@cisco.com>
Adrian Villin [Wed, 2 Oct 2024 13:07:40 +0000 (15:07 +0200)]
hs-test: use nginx 1.26.2 for NginxHttp3Test
- test is no longer marked as extended
- no building required -> removed nginx build scripts
Type: test
Change-Id: I1814b1e4b7e514f81797efa3b5c1e818d2fe4cda
Signed-off-by: Adrian Villin <avillin@cisco.com>
Steven Luong [Wed, 2 Oct 2024 16:35:33 +0000 (09:35 -0700)]
session: incomprehensible error message for adding sdl and rule-table entry
1. When the backend engine is not enable, adding an entry returns
a confusing error message.
DBGvpp# session sdl add 191.1.1.30/32 action 1 tag blue-v4-rule1
session sdl add 191.1.1.30/32 action 1 tag blue-v4-rule1
unknown input `add 191.1.1.30/32 action 1 ta...'
DBGvpp#
2. When the sdl or rule-table entry is already present, adding the duplicate
entry returns a confusing error message.
DBGvpp# session sdl add 8.8.8.1/32 action 0
session sdl add 8.8.8.1/32 action 0
DBGvpp# session sdl add 8.8.8.1/32 action 0
session sdl add 8.8.8.1/32 action 0
session: session is already enable. Must disable first
DBGvpp#
The problem is because there are multiple cli commands start with "session".
When the command is failed with the best match chain, it passes the
command to the other parser chains which start with the keyword "session".
The other cli chain also fails to parse the command. The error message
that the previous parser chain returned may be overwritten by
the newest error message.
The fix is to not return an error in sdl and rule-table parser command chain.
Type: fix
Change-Id: If0165324a763f47ec98ab79a41c3ee9b10057454
Signed-off-by: Steven Luong <sluong@cisco.com>
Dave Wallace [Tue, 1 Oct 2024 01:00:13 +0000 (21:00 -0400)]
build: fix dpdk mellanox driver build setting
- dpdk mellanox driver setting requires rdma-core.mk is included
before dpdk.mk makefile. Include check for rdma-core_version
variable definition in dpdk.mk to prevent a re-occurance of this
issue.
Type: fix
Fixes:
70522a1dc
Change-Id: I297cbd734ac7abe970eac7fb317d06b7acfc5a40
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Ivan Ivanets [Fri, 27 Sep 2024 14:11:18 +0000 (17:11 +0300)]
tests: fix wireguard test case failures
Type: test
There are random failures in the wireguard test cases that are not related to concurrency issues.
The root cause is a retry of the handshake initiation after (REKEY_TIMEOUT + JITTER) ms, where JITTER is a random value between 0 and 333 ms.
Solution: Add a filter parameter for the `send_and_expect` method of the vpptestcase.
This filter allows for excluding unexpected handshake initiation packets when the responder sends two packets (with `message_type = 1` and `message_type = 2`),while only a single packet (with `message_type = 2`) is expected.
Change-Id: I62816931fc1b85e2202f3d36eb6c2a23714644d5
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
Matus Fabian [Mon, 30 Sep 2024 11:52:12 +0000 (13:52 +0200)]
http: http_state_wait_server_reply fix
We enqueue 2 segments to app, first is masg (http_msg_t) and second
as much as possible of the raw data, so it must be:
max_enq - sizeof (msg)
Type: fix
Change-Id: Ib7ece7e0ad1aac99d687d49149f1bccea599b10f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Adrian Villin [Thu, 26 Sep 2024 09:24:34 +0000 (11:24 +0200)]
hs-test: replaced gofmt with goimports
- goimports properly formats imports
Type: test
Change-Id: I78c162dd552fd3ee3d59955d7ea215af30601425
Signed-off-by: Adrian Villin <avillin@cisco.com>
Steven Luong [Fri, 27 Sep 2024 15:35:45 +0000 (08:35 -0700)]
session: fix SDL to use remote instead local
The language is
local == VPP local interface
remote == sender prefix to VPP node
SDL acts on remote prefix.
Type: fix
Change-Id: I82917c6ef801fc67430dfdd15c5630cb7a6347e0
Signed-off-by: Steven Luong <sluong@cisco.com>
Steven Luong [Tue, 24 Sep 2024 23:17:00 +0000 (16:17 -0700)]
hsa: Add multiple listeners support
It is desirable that http cli server can support multiple listeners.
This is needed for supporting both ip4 and ip6 at the same time.
Added the optional keyword listener add | del to the
http cli server command.
Example usage: start ip4 default uri and then add ip6 uri
http cli server
http cli server uri http://2001::2/80 listener add
Type: improvement
Change-Id: I884a4cd64ff676f9759a062b6d607a1742f610f3
Signed-off-by: Steven Luong <sluong@cisco.com>
Alexander Skorichenko [Thu, 12 Sep 2024 07:32:46 +0000 (09:32 +0200)]
snort: API functions for plugin
Also, made disconnect-instance and delete-instance functions
available via cli.
Type: feature
Change-Id: I7939d27867959cb871b1cc7205b94410b53906fd
Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
Florin Coras [Tue, 17 Oct 2023 18:59:49 +0000 (11:59 -0700)]
tls: cleanup engine hs cb and improve ctx formatting
Handshake completion is now tracked via a ctx flag so we no longer need
ctx_handshake_is_over.
Also, as we no longer prealloc application sessions, improve ctx state
formatting.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If48588ecde13e56fb99d1a46238bda53ed4eae1b
Damjan Marion [Wed, 25 Sep 2024 13:54:07 +0000 (15:54 +0200)]
dev: dev process node scheduling improvements
Type: improvement
Change-Id: If39e4d2b46820d5c0465fcc40d255fa95d137d38
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Tue, 10 Sep 2024 15:07:49 +0000 (17:07 +0200)]
vlib: process node scheduler rework
This commit allow use od cooperative multitasking with multiple
descheduling reasons (i.e. event wait and suspend) inside the same
process node. In previus code remote node will wake up process node
by sending event evein if process node is waiting in
vlib_process_ssupend().
This change also allowed new vlib_process_yield() API which deschedules
current process and it puts it into the end of queue.
Change-Id: I846e5a99b4ea1809eb80895f6ffe0ef0b2fd21ae
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
Alok Mishra [Tue, 24 Sep 2024 15:54:37 +0000 (20:54 +0500)]
octeon: fix pause flow control for lbk/sdp devices
Pause frame flow control is not supported for LBK (Loopback) and
SDP (System DPI Packet Interface Unit) devices.
This patch skips the pause flow configuration for these devices.
Type: fix
Fixes:
53239b4
Signed-off-by: Alok Mishra <almishra@marvell.com>
Change-Id: I3096fcef9df4ad59d64bfabb83f91f13813128a8
Damjan Marion [Wed, 25 Sep 2024 13:52:16 +0000 (15:52 +0200)]
vppinfra: add CLIB_SWAP()
Type: improvement
Change-Id: I1911a9d6a0ca8e1d24ce7b95281886392081ffc6
Signed-off-by: Damjan Marion <damarion@cisco.com>