vpp.git
37 hours agointerface: add support for proper checksum handling 25/42425/8
Mohsin Kazmi [Mon, 17 Mar 2025 13:37:18 +0000 (13:37 +0000)]
interface: add support for proper checksum handling

Type: improvement

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I035acc97abb1ce63ce09019b790ee81c803d5d90

38 hours agoarp: checks for null in add neighbor 45/43045/12
Anna Neiman [Tue, 27 May 2025 12:28:53 +0000 (15:28 +0300)]
arp: checks for null in add neighbor

Type: fix

Details:

I have the situation that ip_neighbor_learn  is called for an already deleted interface.
The reproduction sequence is following
1.  arp_input -> arp_reply  on some worker
2.  call ip_neighbor_learn_dp , so request to perform  ip_neighbor_learn on the vpp_main thread
3.  the vpp_main thread is very busy - at the same moment we remove most of l2 interfaces and vrfs under barrier sync, including the TX interface of arp_reply
4.  call ip_neighbor_learn in the  main thread , when the appropriate interface is already deleted

Change-Id: I69b167ba919d57f19d6b941260243bca889c31c1
Signed-off-by: Anna Neiman <[email protected]>
3 days agohsa: mt support for cl udp test 78/43178/6
Florin Coras [Fri, 13 Jun 2025 21:26:54 +0000 (17:26 -0400)]
hsa: mt support for cl udp test

Also add tests for
- multi worker cl connects/binds
- 2 multi worker servers binding the same port

Type: improvement

Change-Id: I222756b7664ffdba83cb69bb0c730526dad3065c
Signed-off-by: Florin Coras <[email protected]>
4 days agovcl: make vcl_evt code compile 77/43177/3
Steven Luong [Fri, 13 Jun 2025 18:07:47 +0000 (11:07 -0700)]
vcl: make vcl_evt code compile

To include vcl_evt code in the build,
make build VPP_EXTRA_CMAKE_ARGS=-DVPP_VCL_ELOG=ON

Type: fix

Change-Id: I45bd093001de6e3dd4d6894726a470cf1ded952b
Signed-off-by: Steven Luong <[email protected]>
4 days agohsa: improve handling of SESSION_E_REFUSED in http client 54/43154/2
Semir Sionek [Fri, 13 Jun 2025 13:16:47 +0000 (13:16 +0000)]
hsa: improve handling of SESSION_E_REFUSED in http client

In that case (e.g trying to connect on a closed port), a connection
is refused and no session is allocated. As such, we cannot use the
struct to obtain the worker or vlib_main_t.

Type: fix
Change-Id: I9b44ccb42ba56a75b8ecc39501a7386ba2e84981
Signed-off-by: Semir Sionek <[email protected]>
4 days agotests: run docker login script hs-test jobs 53/43153/2
Dave Wallace [Fri, 13 Jun 2025 04:09:20 +0000 (00:09 -0400)]
tests: run docker login script hs-test jobs

- login to docker hub in the CI to avoid hitting
  the docker hub rate-limiter

Type: test

Change-Id: I4f6a854136b9bae9da1493a2aaa88576a64b314d
Signed-off-by: Dave Wallace <[email protected]>
4 days agovlib: increase CPU base frequency precision 44/43144/3
Sivaprasad Tummala [Wed, 11 Jun 2025 10:21:43 +0000 (10:21 +0000)]
vlib: increase CPU base frequency precision

Updated the 'show cpu' CLI command to print the base frequency with 4 decimal
places instead of 2 (e.g., 2.69 GHz → 2.6945 GHz) for improved accuracy when
inspecting CPU timing characteristics

Type: improvement

Change-Id: I8f3384204ddcb8033aae9a1e1f6d06bed46478ab
Signed-off-by: Sivaprasad Tummala <[email protected]>
4 days agoaf_packet: fix rx/tx queue cli config 50/43150/4
Florin Coras [Thu, 12 Jun 2025 06:26:00 +0000 (02:26 -0400)]
af_packet: fix rx/tx queue cli config

Type: fix

Change-Id: I45da2ee461c9b0a76eaee341eacd1449e88b87c6
Signed-off-by: Florin Coras <[email protected]>
4 days agodocs: minor improvement to core-pinning documentation 01/43101/4
Hadi Rayan Al-Sandid [Fri, 6 Jun 2025 14:18:41 +0000 (16:18 +0200)]
docs: minor improvement to core-pinning documentation

Type: docs
Change-Id: I05691e77855832ebbd9a3f9ee7de8a4edc1d75fe
Signed-off-by: Hadi Rayan Al-Sandid <[email protected]>
4 days agosflow : documentation 08/43108/6
Neil McKee [Mon, 9 Jun 2025 03:55:14 +0000 (20:55 -0700)]
sflow : documentation

Update sFlow plugin documentation to reflect the addition of
egress-sampling and drop-monitoring.

Link the plugin documentation into the table of contents.

Type: docs
Change-Id: I6bd0e57860ec569fe955fb3f844aa4f24e8d8e25
Signed-off-by: Neil McKee <[email protected]>
4 days agohsa: in http client print the response body only for text/* 72/43072/16
Semir Sionek [Tue, 3 Jun 2025 15:07:28 +0000 (15:07 +0000)]
hsa: in http client print the response body only for text/*

Type: improvement
Change-Id: I9a2e6b9344b64018b0c6872dbd051d7c39c7a0c3
Signed-off-by: Semir Sionek <[email protected]>
5 days agohs-test: configurable Ginkgo timeout 59/43159/5
Adrian Villin [Thu, 12 Jun 2025 12:35:49 +0000 (14:35 +0200)]
hs-test: configurable Ginkgo timeout

- global Ginkgo timeout can now be set using GINKGO_TIMEOUT
- fixes coverage job timing out because of Ginkgo's default 1h timeout

Type: fix

Change-Id: Ie1386e3eab31ff843a94b991e43b5270772b7732
Signed-off-by: Adrian Villin <[email protected]>
5 days agovcl: avoid reading fifo if vcl detached from vpp 49/43149/2
Florin Coras [Thu, 12 Jun 2025 04:45:12 +0000 (00:45 -0400)]
vcl: avoid reading fifo if vcl detached from vpp

Type: fix

Change-Id: Ie357602140993244e81edb97fac48339a88ecbe8
Signed-off-by: Florin Coras <[email protected]>
5 days agohs-test: support for multiple multi-core containers 56/43156/9
Adrian Villin [Tue, 10 Jun 2025 13:33:35 +0000 (15:33 +0200)]
hs-test: support for multiple multi-core containers

- framework will now allocate multiple cores for every vpp container
  when running an MTTest
- added missing test timeout in H2SpecSuite

Type: improvement

Change-Id: I31317560b54b494ab14c8b5f4d7caed9fd3315b0
Signed-off-by: Adrian Villin <[email protected]>
5 days agohs-test: support for multiple rx/tx af_packet queues 36/43136/8
Florin Coras [Tue, 10 Jun 2025 05:14:30 +0000 (01:14 -0400)]
hs-test: support for multiple rx/tx af_packet queues

Type: test

Change-Id: I13d12ea2558fa6ef3849a69a85d970256af52031
Signed-off-by: Florin Coras <[email protected]>
5 days agoaf_packet: include if name in fanout id 51/43151/2
Florin Coras [Thu, 12 Jun 2025 07:51:46 +0000 (03:51 -0400)]
af_packet: include if name in fanout id

Useful when running multiple vpps with veth interfaces with same device
ids and multiple rx/tx queues configured

Type: improvement

Change-Id: I9fd23ad941883850f694c973db8cb8345dd901c2
Signed-off-by: Florin Coras <[email protected]>
6 days agohs-test: ConnectUdpClient fix deadline in Dial 40/43140/3
Matus Fabian [Tue, 10 Jun 2025 22:35:09 +0000 (18:35 -0400)]
hs-test: ConnectUdpClient fix deadline in Dial

Type: test

Change-Id: If2c3061e2c7349c4fd785d6cf417e9b2f0b387a0
Signed-off-by: Matus Fabian <[email protected]>
6 days agohttp: remove spurious h2 init message 42/43142/2
Florin Coras [Wed, 11 Jun 2025 03:02:20 +0000 (20:02 -0700)]
http: remove spurious h2 init message

Type: improvement

Change-Id: I25b0911163a6b6bf8a4f013acc047e5ad3458dc6
Signed-off-by: Florin Coras <[email protected]>
6 days agohttp: http/2 connect method 59/43059/14
Matus Fabian [Fri, 30 May 2025 14:51:59 +0000 (10:51 -0400)]
http: http/2 connect method

Type: feature

Change-Id: I7dc27a93388a6d680f2a87ccbd2704bb76a91357
Signed-off-by: Matus Fabian <[email protected]>
6 days agohttp_static: use authority in redirects 46/43146/2
Matus Fabian [Wed, 11 Jun 2025 11:27:54 +0000 (07:27 -0400)]
http_static: use authority in redirects

Use authority in redirects instead of IP address of the listener.

Type: improvement

Change-Id: Id6dedcb59f4d3e9775ce74be483395ee782ac5d5
Signed-off-by: Matus Fabian <[email protected]>
6 days agohttp: fix Host header usage in http1_target_fixup 45/43145/2
Matus Fabian [Wed, 11 Jun 2025 10:37:18 +0000 (06:37 -0400)]
http: fix Host header usage in http1_target_fixup

Type: fix

Change-Id: I034d40872515dcb192ea5cdd244737fafdb12217
Signed-off-by: Matus Fabian <[email protected]>
6 days agoudp: regrab connected session after transport clone 39/43139/5
Florin Coras [Tue, 10 Jun 2025 21:53:47 +0000 (17:53 -0400)]
udp: regrab connected session after transport clone

Type: fix

Change-Id: Id8a23a14f9086a68bb235fec4e190a19447c109e
Signed-off-by: Florin Coras <[email protected]>
Signed-off-by: Matus Fabian <[email protected]>
6 days agotests: update govpp version to 0.12.0 in hs-test 41/43141/1
Dave Wallace [Tue, 10 Jun 2025 23:19:13 +0000 (19:19 -0400)]
tests: update govpp version to 0.12.0 in hs-test

Type: test

Change-Id: Ibf9cd66a277f801451dc2132fd3a39c396f12b86
Signed-off-by: Dave Wallace <[email protected]>
7 days agovcl: fix read on closed sessions with mt apps 37/43137/2
Florin Coras [Tue, 10 Jun 2025 08:48:06 +0000 (04:48 -0400)]
vcl: fix read on closed sessions with mt apps

Apps like iperf can have a thread close a session that another thread
selects/epolls. Make sure to return error when that happens.

Type: fix

Change-Id: I586f8077431a28e7d8d3e4f21e45efcc035698ba
Signed-off-by: Florin Coras <[email protected]>
7 days agovcl: fix fifo private vpp sh on migration 07/43107/4
Florin Coras [Sun, 8 Jun 2025 22:15:37 +0000 (15:15 -0700)]
vcl: fix fifo private vpp sh on migration

Type: fix

Change-Id: I97a44a8b5619c30ab0e96785e31dd0e98448e8ed
Signed-off-by: Florin Coras <[email protected]>
7 days agovirtio: conditionally set checksum offload based on TCP/UDP offload flags 83/43083/3
Mohsin Kazmi [Wed, 4 Jun 2025 11:08:47 +0000 (11:08 +0000)]
virtio: conditionally set checksum offload based on TCP/UDP offload flags

Type: fix

Previously, the Virtio device node unconditionally set the checksum offload
flag and the checksum start offset, regardless of whether TCP/UDP checksum
offload flags were set.
This patch updates the logic to apply these settings only when the TCP/UDP
offload flags are explicitly set.

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I9af37d03b388ff7d1e22ec125fae97fad50e64d2

7 days agohttp: http2_handle_continuation_frame coverity fix 06/43106/2
Matus Fabian [Sun, 8 Jun 2025 17:38:13 +0000 (13:38 -0400)]
http: http2_handle_continuation_frame coverity fix

Type: fix

Change-Id: I05b4308dd689d1977b59c6ef5791561f7e45693c
Signed-off-by: Matus Fabian <[email protected]>
7 days agovcl: add flag to track need for locks in vls 02/43102/3
Florin Coras [Fri, 6 Jun 2025 20:18:09 +0000 (13:18 -0700)]
vcl: add flag to track need for locks in vls

Once an mt app with a single vcl worker adds more than one pthread,
set flag that locks are needed.

Avoids issues if in a 2 thread app, a pthread disappears while the other
holds vls locks.

Type: improvement

Change-Id: I1203a9060ea88c577f82226a7efd96d0557c7497
Signed-off-by: Florin Coras <[email protected]>
7 days agovcl: inject epoll functions into vcl from ldp 62/43062/12
Florin Coras [Mon, 2 Jun 2025 04:12:36 +0000 (00:12 -0400)]
vcl: inject epoll functions into vcl from ldp

Instead of trying to detect in ldp if vcl is asking for real epoll, have
vcl use libc epoll directly. This is obtained either at startup or by
means of ldp/vls.

Type: improvement

Change-Id: Ia77d49aef33be7618aeeb1a1d6a618d7ef4bcc6c
Signed-off-by: Florin Coras <[email protected]>
9 days agohttp: h2 fix msg.data.len passed to server app 05/43105/1
Matus Fabian [Sun, 8 Jun 2025 14:37:01 +0000 (10:37 -0400)]
http: h2 fix msg.data.len passed to server app

Type: fix

Change-Id: Iac4e5edf42280a3d6679e12e0dd338adfe16aaf3
Signed-off-by: Matus Fabian <[email protected]>
9 days agovcl: allow reads after transport cleanup 99/39599/7
Florin Coras [Sat, 30 Sep 2023 19:56:13 +0000 (12:56 -0700)]
vcl: allow reads after transport cleanup

Type: improvement

Signed-off-by: Florin Coras <[email protected]>
Change-Id: Ia464aae418999cc09bc38fe9fadd3b164f4e0067

9 days agohttp: http2_conn_cleanup_callback fix 04/43104/2
Matus Fabian [Fri, 6 Jun 2025 22:09:10 +0000 (18:09 -0400)]
http: http2_conn_cleanup_callback fix

Type: fix

Change-Id: Id31705fee59d5202ea6924bbd707310d46a0bff8
Signed-off-by: Matus Fabian <[email protected]>
11 days agohttp: mark req/streams as no lookup sessions 03/43103/1
Florin Coras [Fri, 6 Jun 2025 20:46:34 +0000 (13:46 -0700)]
http: mark req/streams as no lookup sessions

Type: fix

Change-Id: If5572fa4a9ac1a5d61867228cbd2a7e6ef3546d3
Signed-off-by: Florin Coras <[email protected]>
11 days agohttp: http/2 CONTINUATION frame support 07/43007/15
Matus Fabian [Thu, 22 May 2025 17:45:08 +0000 (17:45 +0000)]
http: http/2 CONTINUATION frame support

We can now receive and send headers split into multiple frames.

Type: improvement

Change-Id: I3a2a21c67dbc7bbd0bc19b8c6a0ff1516bcfc6fd
Signed-off-by: Matus Fabian <[email protected]>
11 days agoaf_packet: conditionally set checksum offload based on TCP/UDP offload flags 84/43084/3
Mohsin Kazmi [Wed, 4 Jun 2025 11:14:05 +0000 (11:14 +0000)]
af_packet: conditionally set checksum offload based on TCP/UDP offload flags

Type: fix

Previously, the af_packet device node unconditionally set the checksum offload
flag and the checksum start offset, regardless of whether TCP/UDP checksum
offload flags were set.
This patch updates the logic to apply these settings only when the TCP/UDP
offload flags are explicitly set.

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: If0f98db5b654a22995e5c7a82b5f793aad83bb88

11 days agoipip: fix the offload flags 82/43082/6
Mohsin Kazmi [Wed, 4 Jun 2025 10:34:16 +0000 (10:34 +0000)]
ipip: fix the offload flags

Type: fix

Packets with checksum offloading are not correctly handled
in the IPIP tunnel path under the new checksum offload support.
Only GSO packets were being processed correctly.

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: Iaca00a68708bd11cb81951768d7437dc63523d8d

11 days agohs-test: simplify KinD deps installation 85/43085/3
Adrian Villin [Thu, 5 Jun 2025 09:06:42 +0000 (11:06 +0200)]
hs-test: simplify KinD deps installation

Type: test

Change-Id: Icc4eb31fc04dbc2675c4e93b4e99290afb862f36
Signed-off-by: Adrian Villin <[email protected]>
12 days agohs-test: run redis in app containers 86/43086/2
Adrian Villin [Thu, 5 Jun 2025 12:10:10 +0000 (14:10 +0200)]
hs-test: run redis in app containers

- set redis output to quiet mode
- 'vol' directory is no longer copied to CI archives

Type: fix

Change-Id: I307e60e0789af740f245e2c6729cd844fab47e21
Signed-off-by: Adrian Villin <[email protected]>
12 days agovnet: add vnet_buffer_get_opaque() inline 74/43074/3
Damjan Marion [Wed, 21 May 2025 09:28:32 +0000 (11:28 +0200)]
vnet: add vnet_buffer_get_opaque() inline

gives back pointer to vnet opaque area...

Type: improvement
Change-Id: Iab15278ee85f1cfda89522c72cf6e012e0b21dc1
Signed-off-by: Damjan Marion <[email protected]>
12 days agoip: compute checksums before fragmentation if offloaded 91/42891/5
Mohsin Kazmi [Thu, 22 May 2025 19:34:42 +0000 (19:34 +0000)]
ip: compute checksums before fragmentation if offloaded

Type: fix

When a packet with checksum offloading enabled is
fragmented into multiple IP fragments, due to the
egress interface's MTU being smaller than the original
packet size, it gets dropped after reassembly because
the reconstructed packet contains an invalid checksum.

This patch addresses the issue by computing the checksum
in the IP fragmentation logic before the packet is
fragmented, ensuring the resulting fragments carry a
valid checksum upon reassembly.

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I202f169887ae9594f9580a4c7901d7b4483ef5f9

12 days agointerface: clear flags after checksum computation 81/43081/2
Mohsin Kazmi [Wed, 4 Jun 2025 10:32:20 +0000 (10:32 +0000)]
interface: clear flags after checksum computation

Type: fix

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I8f193f03176fa6c8a4f426c009d2978bb8f142fe

12 days agohsa: introduce a configurable body limit for http client 67/43067/7
Semir Sionek [Mon, 2 Jun 2025 11:34:15 +0000 (11:34 +0000)]
hsa: introduce a configurable body limit for http client

Added a limit for returned body sizes, to make sure we're
not allocating too much memory. Configurable with the
max-body-size cli parameter.

Type: improvement
Change-Id: I732d2cfbc8c02ec85c052505b98177554960da88
Signed-off-by: Semir Sionek <[email protected]>
13 days agohs-test: improvements and cleanup 94/42894/9
Adrian Villin [Wed, 28 May 2025 14:47:49 +0000 (16:47 +0200)]
hs-test: improvements and cleanup

- removed remaining 0.0.0.0 binds
- ip address files are now removed on suite teardown
 (parallel testing should now be more reliable)
- removed unused Iperf helper functions

Type: test

Change-Id: I3af630b11a2713b3d5d2828ba6efbabfad571e1e
Signed-off-by: Adrian Villin <[email protected]>
13 days agohs-test: fix incorrect volume mounts 78/43078/12
Adrian Villin [Mon, 2 Jun 2025 10:12:03 +0000 (12:12 +0200)]
hs-test: fix incorrect volume mounts

- shortened volume names to avoid hitting unix socket character limit
- volume paths are updated upon container creation

Type: fix

Change-Id: I601060a902cbba930c324653a600a98c603986c2
Signed-off-by: Adrian Villin <[email protected]>
13 days agohs-test: improve teardown reliability 79/43079/6
Adrian Villin [Mon, 2 Jun 2025 14:53:41 +0000 (16:53 +0200)]
hs-test: improve teardown reliability

- added defer to some teardown functions
- framework now recovers when Vppctl() is used before vppinstance
  is created

Type: test

Change-Id: Ia37cca0ef24f8936cbf350636e249efbf78b13ec
Signed-off-by: Adrian Villin <[email protected]>
13 days agohs-test: adjust timeouts when testing COV build 80/43080/2
Adrian Villin [Wed, 4 Jun 2025 06:08:44 +0000 (08:08 +0200)]
hs-test: adjust timeouts when testing COV build

- TestTimeout is set to 30 minutes unless overridden with TIMEOUT arg
- AssertChannelClosed() timeout is set to TestTimeout-30s

Type: test

Change-Id: Ic321ad5baf3bf2c52ed872c58abc8ad577d82397
Signed-off-by: Adrian Villin <[email protected]>
2 weeks agosflow: add feature-arc at error-drop, drop-monitoring, egress-sampling 43/42543/27
Neil McKee [Sun, 23 Mar 2025 22:57:13 +0000 (15:57 -0700)]
sflow: add feature-arc at error-drop, drop-monitoring, egress-sampling

(First submitted as two separate commits, but is now one).

This turns the "error-drop" --> "drop" arc into a feature-arc
so that any plugin can insert a step and examine condemned packets
before they are freed. The immediate goal is for the sflow
plugin to be able export the headers of dropped packets to the sflow
collector, as per the sflow standard. However it seems clear that the
existing pcap-drop code could also be moved to a plugin, which
would help to simplify the core vnet/interface_output.c.

The sflow agent is rounded out to support egress-sampling and
packet-drop monitoring.  The egress-sampling is achieved by
inserting a node on the interface-output feature arc. Packet
samples taken here are forwarded on the same FIFO to the
main thread, but marked as egress samples so that the samples
are written to a separate netlink PSAMPLE group number, which
indicated to hsflowd that these are egress samples.

Note that when you random-sample both ingress and egress packets at
1:N it is statistically the same as if you were sampling ingress packets
at 1:N and egress packets at 1:N independently. The sflow standard
does not allow a different value of N for ingress and egress on
the same interface, so we are free to take advantage of this.

The new node on the newly introduced "error-drop" feature-arc is
responsible for passing the headers of dropped packets to the main
thread too.  These are not sampled.  Instead we use a deliberately
shallow FIFO to ensure that under chronic conditions of high
packet loss these discard events will have negligible impact if
the main thread is not servicing the FIFO. The sflow standard
sets a rate-limit for the export of discard events which will
almost certainly be much lower (typically around 100 per second)
so even if we can only sustain a peak of, say, 1000 per second being
written to netlink DROPMON that is more than enough. The hsflowd
mod_dropmon will apply the configured sflow rate-limit and throw
away the excess messages before they are actually sent to the sflow
collector. For this reason it is not considered necessary for the
vpp CLI to set an explicit rate-limit.

The netlink PSAMPLE, DROPMON and USERSOCK code has been factored
and corrected for style, but the new implementation behaves the
same way in that there is no heap allocation, and iovectors are
used to assemble the netlink messages from their headers and
attributes.

New tests are added to confirm that (1) a single dropped packet is
delivered to the sflow_drop node, send to the DROPMON
netlink channel, and counted correctly when sflow drop-monitoring
is enabled, and that (2) when bidirectional packet-sampling is
enabled samples are taken both at ingress and at egress.

The terms "rx" for ingress, "tx" for egress and "both" for
bidrectional were settled on for brevity and because they appear
elsewhere in VPP, however the code still uses terms like
"ingress", "egress" and "bidirectional" to be consistent with
sFlow standard documents.

The new CLI options are:

vpp> sflow drop-monitoring enable|disable
vpp> sflow direction rx|tx|both

And the "show sflow" output has been enhanced to reflect this.
The defaults are as follows:

vpp> show sflow
show sflow
sflow sampling-rate 10000
sflow direction rx
sflow polling-interval 20
sflow header-bytes 128
sflow drop-monitoring disable
Status
  interfaces enabled: 0
  packet samples sent: 0
  packet samples dropped: 0
  counter samples sent: 0
  counter samples dropped: 0
  drop samples sent: 0
  drop samples dropped: 0

(rebased on 5/12/2025)

Type: improvement
Change-Id: I831e803fa41874965bc9c32516f655b7ae837719
Signed-off-by: Neil McKee <[email protected]>
2 weeks agohs-test: use base image container for container builds 69/43069/10
Florin Coras [Mon, 2 Jun 2025 17:58:46 +0000 (13:58 -0400)]
hs-test: use base image container for container builds

Avoid multiple updates/downloads of dependencies.

Type: improvement

Change-Id: Ic770dc00a42cb5aa8c780aebb72beef390200363
Signed-off-by: Florin Coras <[email protected]>
Signed-off-by: Matus Fabian <[email protected]>
2 weeks agohash: add ipv4 and ipv6 only hash 95/42995/2
Damjan Marion [Wed, 21 May 2025 09:23:41 +0000 (11:23 +0200)]
hash: add ipv4 and ipv6 only hash

Type: improvement
Change-Id: Ia210a7a128521d4d81dba0fe3f09c87e0bec7dd8
Signed-off-by: Damjan Marion <[email protected]>
2 weeks agovcl: handle pthread cleanups in vls 63/43063/3
Florin Coras [Mon, 2 Jun 2025 04:31:22 +0000 (00:31 -0400)]
vcl: handle pthread cleanups in vls

For historic reasons vcl registers for atexit and pthread exit cleanup
callback functions. Since vls is the one handling thread detection, move
thread cleanup logic there as well.

This also avoids potential issues if main/first pthreads exists before
the subsequent spawned ones as it may lead to premature vcl worker
cleanup.

Type: improvement

Change-Id: Id7a5c186b48f1e4c60ced635d918b5d4b4143fa6
Signed-off-by: Florin Coras <[email protected]>
2 weeks agohs-test: ldp test server logging improvements 61/43061/5
Florin Coras [Sat, 31 May 2025 21:42:38 +0000 (17:42 -0400)]
hs-test: ldp test server logging improvements

- dump stderr and stdout to a file instead of asking iperf to dump to
  file
- handle vcl/ldp debug logs when parsing iperf json output

Type: improvement

Change-Id: I535915315416e83c569f668f984ea9204d744174
Signed-off-by: Florin Coras <[email protected]>
2 weeks agohs-test: fix show error in ldp test 65/43065/2
Matus Fabian [Mon, 2 Jun 2025 07:35:49 +0000 (03:35 -0400)]
hs-test: fix show error in ldp test

Type: test

Change-Id: I5c690c374d8089b231c0029d25bd352aba113893
Signed-off-by: Matus Fabian <[email protected]>
2 weeks agoipsec: fix debug assert with ipv6 checksum offload 50/43050/2
Benoît Ganne [Wed, 28 May 2025 12:09:45 +0000 (14:09 +0200)]
ipsec: fix debug assert with ipv6 checksum offload

Since adding ASSERT() for checksum offload flags we need to make sure
the relevant flags are set before calling vnet_buffer_offload_flags_set()

Type: fix
Fixes: 7e00099480ab4d2c9353b8b5ed8d516e33abdd24

Change-Id: I521ae77f1d2e6a73deef5168473dd3e857257101
Signed-off-by: Benoît Ganne <[email protected]>
2 weeks agovcl: improve select handling of vpp detachment 60/43060/3
Florin Coras [Sat, 31 May 2025 21:13:44 +0000 (17:13 -0400)]
vcl: improve select handling of vpp detachment

Type: improvement

Change-Id: I85df1da32e3d9a06051175385a75818d8ec5b29d
Signed-off-by: Florin Coras <[email protected]>
2 weeks agohs-test: run LDP iperf in app containers 77/43077/3
Adrian Villin [Fri, 30 May 2025 09:07:29 +0000 (11:07 +0200)]
hs-test: run LDP iperf in app containers

Type: test

Change-Id: I24b0556a8d530dbd487370b7113660a6ed455846
Signed-off-by: Adrian Villin <[email protected]>
2 weeks agohs-test: add show error to failed ldp test logs 57/43057/4
Florin Coras [Thu, 29 May 2025 18:18:40 +0000 (14:18 -0400)]
hs-test: add show error to failed ldp test logs

Type: test

Change-Id: I9bb2f0b574c2cdccaa68a69b2b2c5b89afc3f86f
Signed-off-by: Florin Coras <[email protected]>
2 weeks agobuild: updated to build on RHEL-8 56/43056/2
Joel Godfrey-Smith [Thu, 3 Apr 2025 17:34:10 +0000 (13:34 -0400)]
build: updated to build on RHEL-8

Type: improvement

Makefile: updated ability to detect os version id for rhel distros and added section for rhel-8 packages names in rpm dependencies.
extras/depricated/vom/vom.mk: updated path for rhel8 toolset

Change-Id: If760e64a06ff9d8cbe354dc64f13f271a644263e
Signed-off-by: Joel Godfrey-Smith <[email protected]>
Change-Id: I8dae5fceb6b9f370f2c53066550afb608e95e087
Signed-off-by: Joel Godfrey-Smith <[email protected]>
2 weeks agomisc: include http_static and prom in cov reports 55/43055/1
Semir Sionek [Thu, 29 May 2025 12:31:10 +0000 (12:31 +0000)]
misc: include http_static and prom in cov reports

Type: make
Change-Id: Ibcc7306f29647a963bdbc6ed1b1990a9220d8e3c
Signed-off-by: Semir Sionek <[email protected]>
2 weeks agohsa: https support in proxy app 51/43051/2
Matus Fabian [Wed, 28 May 2025 13:58:59 +0000 (09:58 -0400)]
hsa: https support in proxy app

Type: improvement

Change-Id: Id777b4e9b30c496d702ae31b5d628815f6f3b59d
Signed-off-by: Matus Fabian <[email protected]>
2 weeks agoapi: fix inversion of barrier marker in elog 52/43052/2
Alexander Chernavin [Wed, 28 May 2025 15:49:35 +0000 (18:49 +0300)]
api: fix inversion of barrier marker in elog

Currently, the barrier marker for an API message is shown inverted in
the event log. Unsafe API messages are marked as "mp-safe" while safe
ones are marked as "barrier":

  1.332140489: api-msg: sw_interface_dump
  1.332218564: api-msg-done(barrier): sw_interface_dump
  1.332222732: api-msg: control_ping
  1.332241081: api-msg-done(barrier): control_ping
  1.334262103: api-msg: sw_interface_set_flags
  1.334365558: api-msg-done(mp-safe): sw_interface_set_flags

With this fix:

  1.369092258: api-msg: sw_interface_dump
  1.369123551: api-msg-done(mp-safe): sw_interface_dump
  1.369125154: api-msg: control_ping
  1.369132839: api-msg-done(mp-safe): control_ping
  1.370686609: api-msg: sw_interface_set_flags
  1.370735169: api-msg-done(barrier): sw_interface_set_flags

Type: fix
Change-Id: Ib892a83cf801da5fea722eebffd220fabfaa1537
Signed-off-by: Alexander Chernavin <[email protected]>
2 weeks agohttp: disable timer node if session disabled 06/43006/7
Semir Sionek [Thu, 22 May 2025 13:14:59 +0000 (13:14 +0000)]
http: disable timer node if session disabled

Type: improvement
Change-Id: Ie6d343c7712edfd644b6d133007ae10b40359894
Signed-off-by: Semir Sionek <[email protected]>
2 weeks agomisc: remove unnecessary genhtml cmd_line for cov-merge 49/43049/1
Semir Sionek [Wed, 28 May 2025 13:20:08 +0000 (13:20 +0000)]
misc: remove unnecessary genhtml cmd_line for cov-merge

Type: make
Change-Id: Ie5165c38df176d9ec0c8b9ce27c3ecebd25547ec
Signed-off-by: Semir Sionek <[email protected]>
3 weeks agohs-test: fix parallel test runs 92/42892/5
Adrian Villin [Mon, 26 May 2025 09:48:28 +0000 (11:48 +0200)]
hs-test: fix parallel test runs

- every suite has its own generated ports
- registered every perf test as solo to avoid issues
- fixed teardown skipping when PERSIST or DRYRUN is enabled

Type: test

Change-Id: Ie4b85c8000a2158d45e906949d15ae1cefb27d1b
Signed-off-by: Adrian Villin <[email protected]>
3 weeks agohttp_static: add http1-only option to cli 00/43000/4
Matus Fabian [Wed, 21 May 2025 16:49:20 +0000 (16:49 +0000)]
http_static: add http1-only option to cli

This option enable only HTTP/1.1 in TLS ALPN list

Type: improvement

Change-Id: If39e50b25b727533477a80182f96cd9876505762
Signed-off-by: Matus Fabian <[email protected]>
3 weeks agohs-test: include http2 tests in gcov run reports 39/43039/2
Semir Sionek [Tue, 27 May 2025 12:49:08 +0000 (08:49 -0400)]
hs-test: include http2 tests in gcov run reports

Type: make
Change-Id: I038aa549eb2a4757d880c75aa8eefd91ef154edb
Signed-off-by: Semir Sionek <[email protected]>
3 weeks agodpdk: fix the outer flags 19/42419/5
Mohsin Kazmi [Thu, 6 Feb 2025 19:29:02 +0000 (19:29 +0000)]
dpdk: fix the outer flags

Type: fix

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: If2a02e8907c2e6b419893aa19f081d39e5f791ef

3 weeks agotap: enable IPv4 checksum offload on interface 86/42186/6
Mohsin Kazmi [Wed, 29 Jan 2025 11:26:25 +0000 (11:26 +0000)]
tap: enable IPv4 checksum offload on interface

Type: improvement

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I6e671afd3e7d09ea2158659c1c70726e7791fc28

3 weeks agovnet: add assert for offload flags in debug mode 85/42185/6
Mohsin Kazmi [Mon, 27 Jan 2025 18:28:53 +0000 (18:28 +0000)]
vnet: add assert for offload flags in debug mode

Type: improvement

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I7ac5ba0e2dc1fe09a00124b661d6c853a010736a

3 weeks agointerface: add a new cap for virtual interfaces 84/42184/6
Mohsin Kazmi [Mon, 27 Jan 2025 16:07:30 +0000 (16:07 +0000)]
interface: add a new cap for virtual interfaces

Type: improvement

The virtual interfaces can not process the headers at variable offsets from start of the packet. It requires some of the packet offload processing to be done in software i.e. checksums or GSO for packets with tunnel headers.
This patch introduces a new capability flag VNET_HW_IF_CAP_TX_FIXED_OFFSET to represent this behavior
in virtual interfaces.

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I5ec58722b61e2ff52f58e38ff47d795f260bd1d5

3 weeks agohttp: add missing brackets around ip6 host header 93/42893/2
Adrian Villin [Mon, 26 May 2025 15:03:21 +0000 (17:03 +0200)]
http: add missing brackets around ip6 host header

Type: fix

Change-Id: Ia4a175d30e20a3e1ceeee0290914b3cb51904071
Signed-off-by: Adrian Villin <[email protected]>
3 weeks agohsa: http client init wrk->vlib_main in setup 12/43012/2
Matus Fabian [Mon, 26 May 2025 12:19:00 +0000 (08:19 -0400)]
hsa: http client init wrk->vlib_main in setup

Type: fix

Change-Id: I3f16900a05904d8896c8495531ac7ccbb44790ba
Signed-off-by: Matus Fabian <[email protected]>
3 weeks agohttp: starting tls connection with alpn 90/42990/5
Matus Fabian [Tue, 20 May 2025 14:42:39 +0000 (14:42 +0000)]
http: starting tls connection with alpn

this patch also enable http/2

Type: improvement

Change-Id: I20532ff6e3c4f7c4a45e889714a96ee874848fe4
Signed-off-by: Matus Fabian <[email protected]>
3 weeks agoaf_packet: use logging to unify the log at one place 90/42890/3
Mohsin Kazmi [Wed, 21 May 2025 19:20:23 +0000 (19:20 +0000)]
af_packet: use logging to unify the log at one place

Type: fix

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: Iff5fe7e42ee10e2a0860dbd118083e9e64bb7398

3 weeks agoquic: move ctx_pool into quic_worker_ctx_t struct 92/42992/2
Dave Wallace [Wed, 21 May 2025 01:45:46 +0000 (21:45 -0400)]
quic: move ctx_pool into quic_worker_ctx_t struct

- Also, update MAINTAINERS file to include quicly
  engine plugin

Type: refactor
Change-Id: I8181df05b08cbd6296599982256d050c63f53b9b
Signed-off-by: Dave Wallace <[email protected]>
3 weeks agomisc: ignore hs-test test errors in cov runs 05/43005/1
Semir Sionek [Thu, 22 May 2025 12:27:13 +0000 (08:27 -0400)]
misc: ignore hs-test test errors in cov runs

Type: make
Change-Id: Ib5b73d1079f5585219b70c25c8c9dcfa1de7fdcd
Signed-off-by: Semir Sionek <[email protected]>
3 weeks agodma_intel: fix ats_disable attribute handling 91/42991/3
Jeff Shaw [Tue, 20 May 2025 19:45:20 +0000 (12:45 -0700)]
dma_intel: fix ats_disable attribute handling

Some DSA devices allow the Address Translation Service (ATS) to be
controlled at the workqueue level. For those devices, the ats_disable
attribute is exposed in sysfs. For devices that do not support ATS
control per workqueue, and are driven by an idxd kernel driver >= 6.6,
the ats_disable attribute is not visible in sysfs.

This change fixes the DSA workqueue initialization to handle the case
where the ats_disable sysfs attribute is not present.

Type: fix

Change-Id: Ia11a90686b9e1916ab50a4209b67f3270190c3f1
Signed-off-by: Jeff Shaw <[email protected]>
3 weeks agotls: add half close support 99/42999/2
Matus Fabian [Wed, 21 May 2025 14:47:08 +0000 (14:47 +0000)]
tls: add half close support

http/2 use vnet_shutdown_session on connection error after it sends
GOAWAY frame, which need half_close in underlaying transport proto vft
be implemented.

Type: improvement

Change-Id: I93c2e2ccb9bffc31a8111206acd37703c1c28052
Signed-off-by: Matus Fabian <[email protected]>
3 weeks agoaf_packet: show host interface offload flags 87/42887/4
Mohsin Kazmi [Tue, 20 May 2025 15:29:50 +0000 (15:29 +0000)]
af_packet: show host interface offload flags

Type: improvement

This patch implements support to show host interface offload
flags at the time of creation. It also shows host interface
offload flags at the time of calling given function through
'show hardware'.

Before:
  Host Interface Offload:
    creation time:
     rx checksum
     tx checksum
     tcp segmentation offload
     generic segemanttaion offload
    now:
     rx checksum
     tx checksum
     tcp segmentation offload
     generic segemanttaion offload

After changing the offloads on the veth using ethtool command ('ethtool -K veth1 rx off tx off'):
  Host Interface Offload:
    creation time:
     rx checksum
     tx checksum
     tcp segmentation offload
     generic segemanttaion offload
    now:
     generic segemanttaion offload

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: Ia38d35e7a70206781afad42f0333e47bac8fedc9

3 weeks agoaf_packet: fix the error handling on transmit 84/42884/3
Mohsin Kazmi [Thu, 15 May 2025 17:31:16 +0000 (17:31 +0000)]
af_packet: fix the error handling on transmit

Type: fix

Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: If9fe1bf36b2fb18ade876df1dd9f157ccbb694d1

3 weeks agomisc: ignore return codes from make test and revert 42957 97/42997/2
Semir Sionek [Wed, 21 May 2025 10:46:29 +0000 (10:46 +0000)]
misc: ignore return codes from make test and revert 42957

Type: make
Change-Id: I31b16440fef27a54988572d4883a34ca336b5d87
Signed-off-by: Semir Sionek <[email protected]>
3 weeks agovlib: fix missing null-termination 96/42996/2
Damjan Marion [Wed, 21 May 2025 09:26:17 +0000 (11:26 +0200)]
vlib: fix missing null-termination

Type: fix
Change-Id: I65c26518bad89a107510af1c7796edb9eaf56057
Signed-off-by: Damjan Marion <[email protected]>
3 weeks agomisc: Initial 25.10-rc0 commit 88/42888/1 v25.10-rc0
Andrew Yourtchenko [Wed, 21 May 2025 10:23:57 +0000 (12:23 +0200)]
misc: Initial 25.10-rc0 commit

Type: docs
Change-Id: I8d35efda2722c19ce62c609f5b099d5baa28202a
Signed-off-by: Andrew Yourtchenko <[email protected]>
3 weeks agodev: fix default number of rx queues 64/42964/3
Monendra Singh Kushwaha [Thu, 15 May 2025 10:47:02 +0000 (16:17 +0530)]
dev: fix default number of rx queues

Type: fix

Change-Id: I54b79b4a639ac07f901c98641ff2857813347d65
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
4 weeks agohs-test: further separated KinD from HST suites 82/42882/6
Adrian Villin [Mon, 12 May 2025 13:16:18 +0000 (15:16 +0200)]
hs-test: further separated KinD from HST suites

- KinD suite was also improved and cleaned up a bit

Type: test

Change-Id: Iee1adb69f935b69b79d70a541fa40f5f5d73298d
Signed-off-by: Adrian Villin <[email protected]>
4 weeks agohs-test: NewHttpClient add param to disable http2 89/42989/2
Matus Fabian [Tue, 20 May 2025 13:12:11 +0000 (13:12 +0000)]
hs-test: NewHttpClient add param to disable http2

Type: test

Change-Id: Ieed925c0902bc58d916cf3d3c4d709d330e72c89
Signed-off-by: Matus Fabian <[email protected]>
4 weeks agotls: add ALPN support 60/42960/7
Matus Fabian [Wed, 14 May 2025 16:33:43 +0000 (12:33 -0400)]
tls: add ALPN support

App can pass ALPN protocols list via alpn_protos member of
transport_endpt_crypto_cfg_t. For server it should be ordered by
preference. If all set to zeros ALPN negotiation is disabled.
App can get selected protocol via tls_get_alpn_selected, it returns
TLS_ALPN_PROTO_NONE if no protocol has been selected (peer do not used
ALPN). In case that server supports no protocols that client
advertised, then server respond with fatal "no_application_protocol"
alert (TLS handshake fail).

Type: feature

Change-Id: If030672bfb7a6a9cc9a8d7b1fdd30e2776ae2c3f
Signed-off-by: Matus Fabian <[email protected]>
4 weeks agodpdk: set lcores parameter for high lcore id 77/42977/2
Jeff Shaw [Fri, 16 May 2025 18:28:09 +0000 (11:28 -0700)]
dpdk: set lcores parameter for high lcore id

DPDK is most often compiled with RTE_MAX_LCORE=128. On systems which
have more than 128 cores, its necessary to remap the active cores onto
the available 128 cores, using the --lcores parameter. Since VPP does
not use RTE threads, there's no reason DPDK needs to know anything
about VPPs threads. However, DPDK does attempt to pin the thread calling
rte_eal_init() to the current cpu, which can fail if the lcore ID
exceeds RTE_MAX_LCORE.

This commit implements a simple workaround, which is to map VPP's main
lcore to DPDK lcore 0 whenever VPP's main_lcore exceeds RTE_MAX_LCORE.

Type: fix

Change-Id: I3cba5f5f26aed7ec62c70a50bac4c80d78d9d944
Signed-off-by: Jeff Shaw <[email protected]>
4 weeks agomisc: for test-cov-both ensure raport generation 88/42988/1
Semir Sionek [Tue, 20 May 2025 12:20:37 +0000 (12:20 +0000)]
misc: for test-cov-both ensure raport generation

Type: make
Change-Id: I233b6c7410446afff9ad9aa408137a09c6e1df4f
Signed-off-by: Semir Sionek <[email protected]>
4 weeks agoocteon: configure max npa pools using driver arg 98/41698/3
Monendra Singh Kushwaha [Wed, 9 Oct 2024 06:20:13 +0000 (11:50 +0530)]
octeon: configure max npa pools using driver arg

This patch register callback to set max npa pools and use driver
argument to get user specific value for max npa pools.

Type: feature

Change-Id: I5d8f4f88e4d42323e63f12d4dd6bfa12bf06aef2
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
4 weeks agodev: add support to configure driver arguments 56/42956/2
Monendra Singh Kushwaha [Wed, 14 May 2025 11:56:16 +0000 (17:26 +0530)]
dev: add support to configure driver arguments

This patch adds support to configure driver specific global
arguments/options which are global for driver or not specific
to interface/port.

Driver specific arguments can be configures via startup config

devices {
    driver <driver name> {
args 'ARG1=<V1> ARG2=<V2>
    }
    ..
}

Type: feature

Change-Id: I6186531abda386aa02e4dc8784b4a5a02665aa20
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
4 weeks agoocteon: add port argument for ethernet pause frame 52/42952/2
Monendra Singh Kushwaha [Tue, 13 May 2025 07:32:16 +0000 (13:02 +0530)]
octeon: add port argument for ethernet pause frame

Type: refactor

Change-Id: I64dd556f6252d8f8dff7cb41748baebf89ceb159
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
4 weeks agovcl: fix detach of sessions without fifos 71/42971/3
Florin Coras [Fri, 16 May 2025 04:08:42 +0000 (00:08 -0400)]
vcl: fix detach of sessions without fifos

Make sure we only try to cleanup segments for sessions that have not yet
been disconnected.

Type: fix

Change-Id: If8a8afcc9fdc1843918df376fcc442fc8c4fdbad
Signed-off-by: Florin Coras <[email protected]>
4 weeks agodocs: vpp_papi example script 99/41399/4
Bence Romsics [Thu, 8 Aug 2024 11:47:31 +0000 (13:47 +0200)]
docs: vpp_papi example script

Document vpp_papi usage by a sample script.

Type: docs
Change-Id: Ife687c45a81b58a807b87f86c622690984f74a75
Signed-off-by: Bence Romsics <[email protected]>
4 weeks agomisc: ignore hs-test cov failures in test-cov-both target 59/42959/3
Semir Sionek [Wed, 14 May 2025 14:12:44 +0000 (14:12 +0000)]
misc: ignore hs-test cov failures in test-cov-both target

Type: make
Change-Id: I983e052a18e1d02c9f1d77b667f4983695c2cf71
Signed-off-by: Semir Sionek <[email protected]>
4 weeks agocrypto: add new handlers for cbc/ctr+hmac 17/42917/5
Ivan Ivanets [Thu, 1 May 2025 14:32:21 +0000 (17:32 +0300)]
crypto: add new handlers for cbc/ctr+hmac

Type: feature

Support combined enc/dec/chain + auth algorithms with aes-cbc/ctr for
openssl, native and ipsecmb crypto engines

Change-Id: I4c970c57c3fce1e78fe25ea3d4a9c1de3b4de0c0
Signed-off-by: Ivan Ivanets <[email protected]>
4 weeks agoquic: quic engine api 63/42263/58
Dave Wallace [Wed, 29 Jan 2025 04:44:06 +0000 (23:44 -0500)]
quic: quic engine api

- Add an api to the quic plugin to separate the quic engine
  implementation from the vpp quic transport.
- Move quicly library based engine implementation to a
  separate plugin utilizing the quic engine api.

Type: feature

Change-Id: If522f18150ef7d92dbdd5ff1a96a65703dea730c
Signed-off-by: Dave Wallace <[email protected]>
4 weeks agotcp: avoid spurious asserts while discarding bytes 51/42951/2
Florin Coras [Wed, 14 May 2025 04:13:59 +0000 (00:13 -0400)]
tcp: avoid spurious asserts while discarding bytes

Found by hst in ci, probably because of af_packet interfaces with
gso/gro on. Only applies to chained buffers.

Type: fix

Change-Id: I8d223a526bbdf88a2a7b60a0028e79ce14015a37
Signed-off-by: Florin Coras <[email protected]>
4 weeks agotls:fix connection failures with pipeline config 42/42942/2
Varun Rapelly [Wed, 30 Apr 2025 02:26:07 +0000 (02:26 +0000)]
tls:fix connection failures with pipeline config

This patch fixes connection failures and incomplete reads with async
mode and pipeline configuration.
Issue: https://github.com/FDio/vpp/issues/3606

Type: fix
Change-Id: I159861a047882ce41becc9f2e2807bf0a80c8167
Signed-off-by: Varun Rapelly <[email protected]>
4 weeks agoaf_packet: log fatal error on send 36/42936/5
Florin Coras [Fri, 9 May 2025 18:37:14 +0000 (14:37 -0400)]
af_packet: log fatal error on send

Type: improvement

Change-Id: I6f5801a5e01fd066d4a5d07c4bd5f2ecf45796ff
Signed-off-by: Florin Coras <[email protected]>
5 weeks agosession: force cleanup of cts without app wrk 50/42950/1
Florin Coras [Tue, 13 May 2025 19:20:51 +0000 (15:20 -0400)]
session: force cleanup of cts without app wrk

Also some improvements to unit tests.

Type: fix

Change-Id: Ib16f320e4404748fee8e3c6994b8df8dd890b9ea
Signed-off-by: Florin Coras <[email protected]>