Matus Fabian [Thu, 25 Sep 2025 15:14:30 +0000 (11:14 -0400)]
http: QPACK decoding request and response
Type: feature
Change-Id: Ica48ee1bf432a88529c41b166f5a883e2a432677
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Thu, 25 Sep 2025 10:08:56 +0000 (06:08 -0400)]
http: move generic functions to hpack_inlines.h
Type: refactor
Change-Id: Ia7ce7b7651098a5e25e3adadaa854529008ccef6
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Tue, 2 Sep 2025 15:27:00 +0000 (11:27 -0400)]
http: QPACK header decoding w/o dynamic table
Type: feature
Change-Id: Iee49328d21f4c2ab0f384de9864be6d2f65f50eb
Signed-off-by: Matus Fabian <[email protected]>
Adrian Villin [Fri, 26 Sep 2025 14:09:30 +0000 (10:09 -0400)]
hs-test: add suite labels and label filtering
- https://onsi.github.io/ginkgo/#spec-labels
Type: test
Change-Id: I7ebb703d52d6e65efb7a24cd3abc949a749b26c8
Signed-off-by: Adrian Villin <[email protected]>
Damjan Marion [Mon, 29 Sep 2025 11:58:49 +0000 (13:58 +0200)]
dev: remove duplicate cli
Type: fix
Change-Id: I40c3536892d41a068dd2c2e4f7a80ae9cc5c9767
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Mon, 29 Sep 2025 11:38:14 +0000 (13:38 +0200)]
build: add keyword none to VPP_PLUGINS=
Type: improvement
Change-Id: I5301e4df91f2486446acb4a6049170357b51cf5d
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Fri, 26 Sep 2025 13:13:45 +0000 (15:13 +0200)]
vlib: native fuse filesystem implementation
Type: feature
Change-Id: I2445b30ec570fe608a4b60128a5e5bde7d4c96ee
Signed-off-by: Damjan Marion <[email protected]>
Semir Sionek [Fri, 26 Sep 2025 09:42:14 +0000 (09:42 +0000)]
misc: include hs_apps in cov reports
Type: make
Change-Id: Iceeb1ff03da4d12e3d24fb6ceea5044448d807d5
Signed-off-by: Semir Sionek <[email protected]>
Ole Troan [Wed, 23 Jul 2025 10:46:49 +0000 (12:46 +0200)]
stats: histogram, gauge and ring buffer types
A new log2 histogram type with prometheus exporter support.
min_exp can be set in the first element to adjust the bins.
The ring buffer is intended for exporting records to a client side
reader. If the reader cannot keep up the writer will overwrite oldest
entry.
Added a new gauge type, which is like scalar index, but being
explicit allows the prometheus exported to set type corretly.
Type: improvement
Change-Id: Ibe1244f28e01eee8d61a3ca6edb6fd1801f1c942
Signed-off-by: Ole Troan <[email protected]>
Change-Id: I1a6046c6962d67db8c510a571e9414723acbbd7e
Signed-off-by: Ole Troan <[email protected]>
Florin Coras [Thu, 25 Sep 2025 17:52:21 +0000 (13:52 -0400)]
ip: frags should have as much space for headers as original
Type: improvement
Change-Id: Ic8ef26f588a7c161abbe63b3887a76faa32872de
Signed-off-by: Florin Coras <[email protected]>
Matus Fabian [Wed, 24 Sep 2025 10:37:06 +0000 (06:37 -0400)]
hs-test: flaky Http2ContinuationTxTest fix
curl container output get rarely corrupted for unknown reason
Type: test
Change-Id: I3c832e1bfddffe590b3b3667065c28d4ded8183e
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Wed, 20 Aug 2025 16:18:46 +0000 (12:18 -0400)]
hsa: http connect proxy client multiworker support
Type: improvement
Change-Id: I24e80476136712ee8dd4c8c4b3cd7e5c017acc80
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Mon, 28 Jul 2025 16:44:13 +0000 (12:44 -0400)]
hsa: http connect proxy client
Type: feature
Change-Id: Ibe6c01378688b0b47ef26149663b3de1aa02a083
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Tue, 23 Sep 2025 13:55:07 +0000 (09:55 -0400)]
http: h2 fix app closed tunnel
do not change stream state if there is more data to send when app
closed tunnel
Type: fix
Change-Id: I41a39b10ceeabc02d6f23a6bdf8c51b421cffb61
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Mon, 22 Sep 2025 15:18:25 +0000 (11:18 -0400)]
http: add stream reset countres to the stats
Type: improvement
Change-Id: Id255a0e03f127576abcdc7a0e025c9f3c3eb6981
Signed-off-by: Matus Fabian <[email protected]>
Matthew Smith [Mon, 22 Sep 2025 13:32:29 +0000 (08:32 -0500)]
linux-cp: fix multicast route setup with lcp-sync
Type: fix
Fixes:
344dab5a22e1
Code which tries to avoid removing multicast routes prematurely or
adding them multiple times causes problems when lcp-sync is enabled. At
the time the decision is made whether this is the first interface
address added, multiple addresses may already configured on the VPP
interface. This causes the route to not be added.
Retain the check which avoids premature removal and remove the one
which tries to avoid adding the route multiple times. Adding the route
more than once is innocuous.
Signed-off-by: Matthew Smith <[email protected]>
Change-Id: I2a29f87db5ba97e847a6e29ad2283386b1f1dc7b
Damjan Marion [Thu, 25 Sep 2025 09:23:18 +0000 (11:23 +0200)]
crypto-native: respect platform flags if platform build
Type: improvement
Change-Id: I79200230c6ebfba988b5f36baa98ef976c9ba58f
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Thu, 25 Sep 2025 08:42:19 +0000 (10:42 +0200)]
build: change cpu flags for octeon10 platform
Type: improvement
Change-Id: Ieb28e07aa6159d5cd670e816cae0d0b3599c417e
Signed-off-by: Damjan Marion <[email protected]>
Semir Sionek [Mon, 8 Sep 2025 12:18:49 +0000 (12:18 +0000)]
hsa: include rtt & jitter measurements in echo client periodic reports
Periodic reports in echo client now include RTT measurements by default
in TCP & UDP echo-bytes runs. They can be swapped for basic jitter
measurements with report-jitter.
Type: improvement
Change-Id: I8ee0b17b49ed24799adb95ac7a3bbad383e339e1
Signed-off-by: Semir Sionek <[email protected]>
Andrew Yourtchenko [Wed, 24 Sep 2025 12:09:17 +0000 (14:09 +0200)]
misc: Initial 26.02-rc0 commit
Type: docs
Change-Id: If76365a42efd88ac49af02fb4c86d62c4bafe24b
Signed-off-by: Andrew Yourtchenko <[email protected]>
Florin Coras [Tue, 23 Sep 2025 19:32:11 +0000 (15:32 -0400)]
dhcp: fix lease renewal for non-default fibs
Type: fix
Change-Id: Ic6f02e47cd7f83d3ac0f273b9bff5c6c1d8d5a43
Signed-off-by: Florin Coras <[email protected]>
Signed-off-by: Steven Luong <[email protected]>
Semir Sionek [Tue, 23 Sep 2025 12:13:07 +0000 (12:13 +0000)]
hsa: adjust echo client reporting for udp runs
Do not print handshake times for UDP, include total dgram
sent/received/loss percentage statistics.
Type: improvement
Change-Id: I67df73d56b2971c8fddd757fceef76c0f208aed4
Signed-off-by: Semir Sionek <[email protected]>
Adrian Villin [Tue, 23 Sep 2025 08:52:27 +0000 (04:52 -0400)]
kube-test: fix and update image tags
Type: test
Change-Id: I6514cad1349c65a4ae79e657a3d64d380ce1c1e4
Signed-off-by: Adrian Villin <[email protected]>
Matus Fabian [Mon, 22 Sep 2025 12:32:37 +0000 (08:32 -0400)]
hsa: proxy active_open_rx_callback fix
Do not program tx evt on passive open when session is closed
Type: fix
Change-Id: Iddf1e40689caf87e1846534c58b0d42f07ca046e
Signed-off-by: Matus Fabian <[email protected]>
Semir Sionek [Mon, 22 Sep 2025 10:05:35 +0000 (10:05 +0000)]
hsa: remove unused test_send_buffer from echo client
test_send_buffer was originally supposed to be used for assembling
dgrams with included data buffer offsets. As we decided on using
segments, this is not needed.
Type: fix
Change-Id: I3cdbfc077aefeecc44615cb93f7d9f3274b6b5fb
Signed-off-by: Semir Sionek <[email protected]>
Damjan Marion [Fri, 19 Sep 2025 08:36:57 +0000 (10:36 +0200)]
dev: add ability for process node to wait for device config
This also reverts commit
f36243c which was causing issues with queue
setup.
Change-Id: I5997d226c4bbf8c58d9ad538fa59563ea4fe2f69
Type: fix
Fixes:
f36243c
Signed-off-by: Damjan Marion <[email protected]>
Mohsin Kazmi [Fri, 19 Sep 2025 16:07:56 +0000 (16:07 +0000)]
snort: add support for DIOCTL_GET_PRIV_DATA_LEN
Type: improvement
This patch implements support for retrieving private data length via ioctl.
The private data pointer is set in the message header,
and when Snort processes the packet, it can request the length
of this private data through the ioctl interface.
Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I02a831557b349bab7c9c8fe2e00cd8b085d3e5f7
Florin Coras [Fri, 19 Sep 2025 07:38:39 +0000 (03:38 -0400)]
session svm: fix session migrate attach data corruption
Fifo ooo_deq is used when peeking. Consequently, when migrating a
udp session already scheduled for sending, the owner thread will read
corrupted data. Overload enq/deq rbtrees instead.
Type: fix
Change-Id: I5bf25355f64513911a349e42c056b3a9b6eb3523
Signed-off-by: Florin Coras <[email protected]>
Florin Coras [Thu, 18 Sep 2025 04:34:13 +0000 (00:34 -0400)]
session: fix handling of closed during migration
Close the new session.
Type: fix
Change-Id: I5cc231b68e7da9c9c459bab1706490ac18cfeabc
Signed-off-by: Florin Coras <[email protected]>
Mihut Aronovici [Mon, 14 Jul 2025 19:32:22 +0000 (15:32 -0400)]
bfd: add API to configure TOS for IP of BFD packets
Change-Id: I2753b5b200791130b83fa07b0fa731e636f79252
Signed-off-by: Mihut Aronovici <[email protected]>
Type: improvement
Denys Haryachyy [Thu, 28 Aug 2025 09:56:42 +0000 (12:56 +0300)]
ipsec: Improve tunnel mode detection in ESP decrypt post-crypto
Type: fix
- Use irt->is_tunnel flag to properly detect IPSec tunnel mode SAs
- Skip IP address verification for IPSec tunnel mode (outer IP already validated)
Change-Id: Icd57b699b745f764e7e87bbbb4cf891e82320f37
Signed-off-by: Denys Haryachyy <[email protected]>
Stanislav Zaikin [Tue, 27 May 2025 11:20:59 +0000 (13:20 +0200)]
vapi: uds transport pass client index correctly
client_index inside vapi message is an opaque cookie. client_index in
vapi is just index inside sockclnt_create/sockclnt_delete messages.
Type: fix
Change-Id: Id06ff078788994d6c426e85e5ce08a259e236bc0
Signed-off-by: Stanislav Zaikin <[email protected]>
Adrian Villin [Fri, 12 Sep 2025 13:38:39 +0000 (09:38 -0400)]
kube-test: MW iperf tests, improvements
- caching calico images in local registry
- updated calico config template
Type: test
Change-Id: I9f1b3b1301914c4e44e7963f9fdfe6a5dd7ddd2a
Signed-off-by: Adrian Villin <[email protected]>
Damjan Marion [Thu, 18 Sep 2025 15:13:37 +0000 (17:13 +0200)]
build: add knob to specify which plugins to build
Type: make
Change-Id: I6bd6df968577a4b5335f0604e02c2ea05d938355
Signed-off-by: Damjan Marion <[email protected]>
Mohsin Kazmi [Thu, 18 Sep 2025 15:26:27 +0000 (15:26 +0000)]
snort: fix the libdaq required version
Type: fix
Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: Iffc86d9a59a86c3acf3959ef4eb66c5379c8d659
Monendra Singh Kushwaha [Thu, 18 Sep 2025 07:19:21 +0000 (07:19 +0000)]
build: update octeon-roc version
Type: feature
Change-Id: Iaa1df805417e1997dca44e588f84e6a7daff56c7
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
Dave Wallace [Tue, 16 Sep 2025 05:29:41 +0000 (01:29 -0400)]
quic: refactor crypto context index encoding and debug output
- add encode / decode macros for consistency across quic engine
implementations
- debug code cleanup
Type: refactor
Change-Id: I7d0412b78a7555dbd346c4cfee56481effe054a5
Signed-off-by: Dave Wallace <[email protected]>
Mohsin Kazmi [Wed, 17 Sep 2025 12:54:25 +0000 (12:54 +0000)]
snort: add more debug logs in vpp_daq library
Type: improvement
To enable debugging information in vpp_daq, one needs to pass:
--daq-var debug
daq_vpp: daq_vpp_instantiate: creating instance 1 out of 2 with input vpp0
daq_vpp: daq_vpp_socket_connect: connecting to socket /run/vpp/snort.sock
daq_vpp: daq_vpp_socket_connect: connected to socket /run/vpp/snort.sock
daq_vpp: daq_vpp_request: send msg: { type: CONNECT, connect: { num_snort_instances: 2, daq_version: 3.0.2
daq_vpp: daq_vpp_request: recv msg: { err: 0, connect: { num_bpools: 2 } }
daq_vpp: daq_vpp_request: send msg: { type: GET_BUFFER_POOL, get_buffer_pool: { buffer_pool_index: 0 } }
daq_vpp: daq_vpp_request: recv msg: { err: 0, get_buffer_pool: { size:
320864256 } }
daq_vpp: daq_vpp_request: send msg: { type: GET_BUFFER_POOL, get_buffer_pool: { buffer_pool_index: 1 } }
daq_vpp: daq_vpp_request: recv msg: { err: 0, get_buffer_pool: { size:
320864256 } }
daq_vpp: daq_vpp_request: send msg: { type: GET_INPUT, get_input: { input_name: "vpp0" } }
daq_vpp: daq_vpp_request: recv msg: { err: 0, get_input: { input_index: 0, num_qpairs: 2, shm_size: 61440
daq_vpp: daq_vpp_request: send msg: { type: ATTACH_QPAIR, attach_qpair: { input_index: 0, qpair_index: 0 }
daq_vpp: daq_vpp_request: recv msg: { err: 0, attach_qpair: { qpair_id: { thread_id: 0, queue_id: 0 }, log
daq_vpp: daq_vpp_find_or_add_input: input vpp0 qpair 0.0: size 1024, hdr 0x7f01543bc000, enq 0x7f01543c208
daq_vpp: daq_vpp_request: send msg: { type: ATTACH_QPAIR, attach_qpair: { input_index: 0, qpair_index: 1 }
daq_vpp: daq_vpp_request: recv msg: { err: 0, attach_qpair: { qpair_id: { thread_id: 1, queue_id: 0 }, log
daq_vpp: daq_vpp_find_or_add_input: input vpp0 qpair 1.0: size 1024, hdr 0x7f01543c3080, enq 0x7f01543c910
daq_vpp: daq_vpp_add_qpair_to_instance: qpair 0.0 added to instance 1
daq_vpp: daq_vpp_instantiate: creating instance 2 out of 2 with input vpp0
daq_vpp: daq_vpp_add_qpair_to_instance: qpair 1.0 added to instance 2
daq_vpp: daq_vpp_get_msg_pool_info: getting msg pool info
daq_vpp: daq_vpp_get_msg_pool_info: getting msg pool info
daq_vpp: daq_vpp_ioctl: ioctl cmd DIOCTL_GET_PRIV_DATA_LEN
Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: I33bfbf50999bdf7658a5710da239bb0d1c4ca787
Damjan Marion [Tue, 16 Sep 2025 10:27:06 +0000 (12:27 +0200)]
dev: initialize devices earlier, before main loop running
Type: improvement
Change-Id: I073f78b29ab32d0d9f4447813acc684b6576f264
Signed-off-by: Damjan Marion <[email protected]>
Matus Fabian [Tue, 16 Sep 2025 15:55:00 +0000 (11:55 -0400)]
http: http2_format_req print more info
print flags and h2 request variables like window size on hi vebosity
Type: improvement
Change-Id: Ibfa73fe9d04745078c0ae0efa79cd4cb521433b9
Signed-off-by: Matus Fabian <[email protected]>
Adrian Villin [Mon, 8 Sep 2025 14:29:39 +0000 (16:29 +0200)]
hs-test: move hs-test to vpp/test-c
- separated cluster tests from hs-test and moved them into
test-c/kube-test
- cleaned up kube-test and hs-test
- kube-test setup-cluster.sh improvements
- Makefile in extras/hs-test is temporary
- kube-test stability improvements
Type: test
Change-Id: Iee9fc732ccd303d4b4635d329f673c03f95a4dd4
Signed-off-by: Adrian Villin <[email protected]>
Matus Fabian [Mon, 15 Sep 2025 20:06:17 +0000 (16:06 -0400)]
http: notify app on app_worker_init_connected err
Type: fix
Change-Id: I5096d3869134af4f696b2ee9be605a9d049202d4
Signed-off-by: Matus Fabian <[email protected]>
Damjan Marion [Mon, 15 Sep 2025 20:30:41 +0000 (22:30 +0200)]
build: bump cmake to 3.19
Type: improvement
Change-Id: I8b509b3eb03b4df2972e73aeec4771190652171b
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Mon, 15 Sep 2025 17:36:24 +0000 (19:36 +0200)]
octeon: add support for changing RSS key
Change-Id: I855c394262b275d1f98d9bce1a3cd4a2411d88f7
Type: improvement
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Mon, 15 Sep 2025 17:35:48 +0000 (19:35 +0200)]
dev: add support for changing RSS key
Type: improvement
Change-Id: I40350be4c362d20f60b94c82faf564f06d8e86f6
Signed-off-by: Damjan Marion <[email protected]>
Matus Fabian [Mon, 8 Sep 2025 23:07:33 +0000 (19:07 -0400)]
hsa: proxy don't send tx event when fifo is empty
Type: improvement
Change-Id: Ic0a37de2c9f9e0b4e60cdd0740eb4ffcede23629
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Mon, 8 Sep 2025 17:14:40 +0000 (13:14 -0400)]
hsa: proxy http can be closed on ao connected err
Type: fix
Change-Id: I0e42a40a33056c00ca7b7a01acd4c73072734eb2
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Mon, 8 Sep 2025 17:08:51 +0000 (13:08 -0400)]
http: add half-close support for h2 tcp tunnels
Proxy app can now handle TCP connection close better.
Type: improvement
Change-Id: I8d0cbf0c8dbc97aac4b8d860e67c4a325f316213
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Sun, 7 Sep 2025 20:25:40 +0000 (16:25 -0400)]
http: add worker counters
Type: improvement
Change-Id: I38c12f53568d41f7eb417d6c08d0c8fef5767597
Signed-off-by: Matus Fabian <[email protected]>
Alexander Maltsev [Wed, 10 Sep 2025 13:57:03 +0000 (18:57 +0500)]
vppinfra: zero-terminate self netns path
Fix tap_create_if sometimes failing to get current netns.
Type: fix
Change-Id: I30f7cd623028da52240d8d29077a01a59cb96f77
Signed-off-by: Alexander Maltsev <[email protected]>
Damjan Marion [Mon, 15 Sep 2025 13:24:08 +0000 (15:24 +0200)]
octeon: add option to specify RSS flowkey bitmap
Type: improvement
Change-Id: I0fa660c96a44ede0fcb435af560544bbc0f8da04
Signed-off-by: Damjan Marion <[email protected]>
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
Damjan Marion [Mon, 15 Sep 2025 12:03:02 +0000 (14:03 +0200)]
octeon: fix issue with RSS and promisc mode
Type: fix
Change-Id: I64c4cb8655ff957940a6d7ec38a82a8bf0dd4053
Signed-off-by: Damjan Marion <[email protected]>
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
Mohsin Kazmi [Mon, 15 Sep 2025 12:54:47 +0000 (12:54 +0000)]
snort: refactor to better align the code
Type: refactor
Signed-off-by: Mohsin Kazmi <[email protected]>
Change-Id: If6c71b96843f082842e1f290885ee0e12384e5d0
Florin Coras [Wed, 10 Sep 2025 03:04:00 +0000 (23:04 -0400)]
session tls: add support for configurable trusted cas
Type: feature
Change-Id: Ic6727d03a369cf09d4397da6bff998d1811a6a61
Signed-off-by: Florin Coras <[email protected]>
Semir Sionek [Tue, 9 Sep 2025 12:47:44 +0000 (12:47 +0000)]
hsa: various echo client fixes
Now last_total variables for datagrams are properly initialized.
Batch size for UDP runs when using throughput limiting now caps at 1460
to avoid splitting datagrams.
Final throughput avg printout is now rounded to the nearest integer.
Type: fix
Change-Id: Ia52687b73bd22ec682a971f9ee902572c9212436
Signed-off-by: Semir Sionek <[email protected]>
Dave Wallace [Fri, 12 Sep 2025 14:39:26 +0000 (10:39 -0400)]
tls: fix memory leak when using test cert
Type: fix
Change-Id: I4bf4c6c37f9ee6e262730c372f16fbc086a2d13c
Signed-off-by: Dave Wallace <[email protected]>
Florin Coras [Thu, 11 Sep 2025 20:42:49 +0000 (16:42 -0400)]
hsa: test cl udp vcl events
Validate that rx events are properly propagated for cl udp sessions.
Type: test
Change-Id: Idd5430915d7ba9921d0f5327b1e3f7d3f9ffd333
Signed-off-by: Florin Coras <[email protected]>
Florin Coras [Thu, 11 Sep 2025 16:04:43 +0000 (12:04 -0400)]
session: track app session index for cl sessions
Type: fix
Change-Id: I961d00f40a0facd6db4d4f39177bd22b36ed29f3
Signed-off-by: Florin Coras <[email protected]>
Damjan Marion [Mon, 8 Sep 2025 10:57:56 +0000 (12:57 +0200)]
build: add option to disable building of Python API
Type: improvement
Change-Id: I7fc2946e136373c4deabfd2c4655ed84c94f8c26
Signed-off-by: Damjan Marion <[email protected]>
Adrian Villin [Tue, 9 Sep 2025 07:13:16 +0000 (03:13 -0400)]
hs-test: lower TcpWithLoss perf threshold
Type: test
Change-Id: Icecb4fce52cb8df8a0b252efcbd67df188bee8d1
Signed-off-by: Adrian Villin <[email protected]>
Matus Fabian [Sun, 7 Sep 2025 13:15:44 +0000 (09:15 -0400)]
hsa: proxy session reset improvement
Handle session_reset_callback as session reset to properly propagate
session state between active and passive open sides.
Type: improvement
Change-Id: I34eb80f5a4d7874e6cb0fdc072c6ee5894793b03
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Sun, 7 Sep 2025 13:14:30 +0000 (09:14 -0400)]
http: http/2 tunnel closing improvement
Type: improvement
Change-Id: I8f9520a8a72ff42fb239852fc28b6c1b63ca268b
Signed-off-by: Matus Fabian <[email protected]>
Adrian Villin [Fri, 5 Sep 2025 07:01:45 +0000 (09:01 +0200)]
hs-test: fix KinD cluster setup
Type: test
Change-Id: I00dfe98e2bed81a5db6d50f3244c0b8ab546c356
Signed-off-by: Adrian Villin <[email protected]>
Damjan Marion [Mon, 8 Sep 2025 21:53:27 +0000 (23:53 +0200)]
vlib: add va_list version of vlib_log()
Type: improvement
Change-Id: I94693563aef5dad4fb8a9cb59be63a4cabf8d147
Signed-off-by: Damjan Marion <[email protected]>
Damjan Marion [Tue, 6 May 2025 15:45:16 +0000 (17:45 +0200)]
snort: plugin rework
Changes:
- support for multiple qpairs per thread
- ability for daq to connect to multiple instances
- ability for daq to connect to specific qpairs
- added ownership to each qpair to avoid multiple clients using same one
- enabled packet rewrite
- enqueue and dequeue nodes are decoupled from feature arcs so they
can be used in different datapaths
- feature arc doesn't support multiple-instances anymore, use multiple
qpairs for load-balancing
- per-instance drop decisions based on drop bitmap
sample snort invocation:
snort \
<standard args> \
--max-packet-threads 3 \ # number of threads snort will launch
--daq-dir <daq dir> \ # path to dir with libdaq_bpp.so
--daq vpp \ # enable VPP daq
--daq-var <path> \ # optional, path to snort.sock
--daq-var debug \ # optional, turn on debug prints
-i vpp0:1 \ # attach instance to vpp0 instance qpair 1.0
-i vpp0:1.1 \ # attach instance to vpp0 instance qpair 1.1
-i vpp0:2.0,2.1,0 \ # attach instance to vpp0 instance qpairs 2.0, 2.1 and 0.0
qpair is identified as x.y where x is thread_id and y is queue_id, .y
part can be ommited if queue_id is 0.
Type: feature
Change-Id: I4f65b9a12ec71b115b9cb2da814c7918ddf6191d
Signed-off-by: Damjan Marion <[email protected]>
Signed-off-by: Mohsin Kazmi <[email protected]>
Adrian Villin [Fri, 22 Aug 2025 12:20:17 +0000 (14:20 +0200)]
hs-test: KinD LargeMTU suite
- added large mtu iperf test
- improvements to setup-cluster script
Type: test
Change-Id: I4e2eb455b944d6b539e8627cf0f161cf182b960c
Signed-off-by: Adrian Villin <[email protected]>
Florin Coras [Thu, 28 Aug 2025 16:42:43 +0000 (12:42 -0400)]
tls: cert validation config
Type: improvement
Change-Id: I7d626ed57bbdcb7810c99a1fe0f617fde0ac014f
Signed-off-by: Florin Coras <[email protected]>
Артем Глазычев [Tue, 26 Aug 2025 12:04:58 +0000 (15:04 +0300)]
linux-cp: don't drain nl-messages during processing
When we process the incoming netlink message queue and have NEW_LINK for a VLAN interface, we call lcp_itf_pair_add.
Internally, drain is called, which corrupts the original vector (probably due to reallocation)
Type: fix
Change-Id: I0487bfb2939a04d8d3c156725086fedd6e9c72c7
Signed-off-by: Artem Glazychev <[email protected]>
Damjan Marion [Wed, 23 Jul 2025 12:42:33 +0000 (12:42 +0000)]
dev: add option to assign one rx and one tx queue per thread
queue 0 -> main
queue 1 -> thread 1 (worker 0)
queue 2 -> thread 2 (worker 1)
etc...
example startup.conf entry:
devices {
dev pci/0002:04:00.0 {
port 0 {
name eth2
flags queue-per-thread
}
}
}
Type: improvement
Change-Id: Ia1c216905c5e4368a0e2e47688fd87348be20106
Signed-off-by: Damjan Marion <[email protected]>
Semir Sionek [Wed, 20 Aug 2025 14:16:29 +0000 (14:16 +0000)]
hsa: add periodic reports to builtin echo client
report-interval now enables periodic reports, which display TX/RX stats,
as well as throughput and sent/recv datagrams if running over UDP.
It also features a -total variant, which displays same data, but as
totals counted from test start time.
Type: improvement
Change-Id: I28dd1a0c8bfbcaf2882a102433ce4acf28b3d6ef
Signed-off-by: Semir Sionek <[email protected]>
Semir Sionek [Mon, 1 Sep 2025 13:45:08 +0000 (13:45 +0000)]
session: fix app_send_dgram_segs enqueueing n-1 segments
Type: fix
Change-Id: Iad1c4d967a10e2b5a2e951b119ff4b89716c3d50
Signed-off-by: Semir Sionek <[email protected]>
Matus Fabian [Wed, 27 Aug 2025 20:38:39 +0000 (16:38 -0400)]
http: http2_conn_connect_stream_callback fix
pass correct opaque to app_worker_connect_notify on max streams hit
Type: fix
Change-Id: Ib320eddc90eb30a60914c7769faef779f6911a3f
Signed-off-by: Matus Fabian <[email protected]>
Florin Coras [Wed, 20 Aug 2025 17:33:24 +0000 (13:33 -0400)]
hsi: support to intercept all proto traffic
Type: improvement
Change-Id: Ieebc0a8383f8c86756e4bd36501c2faa9df87a98
Signed-off-by: Florin Coras <[email protected]>
Florin Coras [Fri, 22 Aug 2025 14:49:05 +0000 (10:49 -0400)]
udp: add input nolookup node
Feature parity with tcp. Useful when other nodes like hsi do the udp
session lookup before sending to udp.
Type: feature
Change-Id: Ib5f39a86cb316d326f0e19f7426b3b97c1bdecf7
Signed-off-by: Florin Coras <[email protected]>
Hadi Rayan Al-Sandid [Thu, 14 Aug 2025 19:13:09 +0000 (21:13 +0200)]
ip: 'format_ip6_header' - re-enable recurse into next proto layer
Type: improvement
Change-Id: I4d04466a9a6e94b460fb3c29543435dd9bceab99
Signed-off-by: Hadi Rayan Al-Sandid <[email protected]>
Hadi Rayan Al-Sandid [Fri, 1 Aug 2025 10:34:11 +0000 (12:34 +0200)]
ip: reassembly - enable registering custom next nodes for v6
This function adds the ability to register next
nodes for the custom ip6 full-reassembly node,
similarly to custom v4.
Type: improvement
Change-Id: I65fd323192db0b96bb7ca301f8c890a4683f48fe
Signed-off-by: Hadi Rayan Al-Sandid <[email protected]>
Benoît Ganne [Wed, 20 Aug 2025 08:13:52 +0000 (10:13 +0200)]
vnet: fix set interfaces rx-placement cli
- unformat() parses 32-bit integers whereas clib_thread_t is a 16-bit
integers, yielding stack overflow
- no need to pass thread_index when parsing main
- validate thread_index otherwise ~0 + 1 arithmetic done in
set_hw_interface_rx_placement() selects main thread by default
Type: fix
Fixes:
fc7b794758fbdd9bcae337e90255c1fc1e548808
Change-Id: I36dcba977573a32f6f91e6c5470966f35cce30ed
Signed-off-by: Benoît Ganne <[email protected]>
Jay Wang [Mon, 20 May 2024 14:30:22 +0000 (14:30 +0000)]
vppinfra: add ARM neoverse-v2 support
It is recommended to use -mcpu instead of -march or -mtune on Grace
because the -mcpu flag specifies both the appropriate architecture and
the tuning strategy[1].
Type: improvement
[1] https://github.com/NVIDIA/grace-cpu-benchmarking-guide/blob/main/src/developer/languages/c-c++.md#recommended-compiler-flags
Signed-off-by: Jay Wang <[email protected]>
Change-Id: I09b52e605f218e633c4b59519038646ac6eec870
Maxime Peim [Wed, 13 Aug 2025 15:30:16 +0000 (17:30 +0200)]
vlib: add possibility to disable pager
For the current running cli process, it can be useful to be able to
disable the pager in case of long running command (e.g. ping).
For a small window, the pager will prompt and hide the results of the
command.
Type: improvement
Change-Id: I8fdde7f581683a8d9fd702a744fb95b5c58e14ff
Signed-off-by: Maxime Peim <[email protected]>
Hadi Rayan Al-Sandid [Fri, 1 Aug 2025 12:00:04 +0000 (14:00 +0200)]
vnet: install full reassembly headers
Type: improvement
Change-Id: I7185f5f7ca2287bc194d06faf259c09c1bf19140
Signed-off-by: Hadi Rayan Al-Sandid <[email protected]>
Pim van Pelt [Wed, 13 Aug 2025 22:02:34 +0000 (00:02 +0200)]
vnet: add SFF8472 and SFF8636 diagnostics
Using device-class.eeprom_read_function, extract the type of
EEPROM, and create a parser for SFF8472 (SFP+/SFP/SFP28) and
SFF8636 (QSFP+/QSFP28/QSFP-DD) to show module diagnostics.
When available, read EEPROM page A2h and report on DDM values:
show int transceiver <itf> eeprom
show int transceiver <itf> module [verbose]
show int transceiver <itf> diag [verbose]
Type: improvement
Change-Id: Iae41b9753f31bc1a8d32b2c42d396cd743864147
Signed-off-by: [email protected]
Monendra Singh Kushwaha [Thu, 21 Aug 2025 07:29:43 +0000 (07:29 +0000)]
octeon: add L4 checksum flags
This patch adds L4 checksum related flags in vlib buffer.
Type: feature
Change-Id: Ic01940e7191b2f97f4cadb19a15b4575977aa2e3
Signed-off-by: Monendra Singh Kushwaha <[email protected]>
Artem Glazychev [Mon, 18 Aug 2025 04:18:05 +0000 (11:18 +0700)]
fib: change the order of adding interface routes
The order in which fib_table_entry is added affects the update of adjacency. If you assign a /31 address to the interface, an ARP request is sent to the peer with the source address from the glean adjacency, which is incorrect before adding the local address route.
Steps to reproduce the problem:
create tap
set interface state tap0 up
set interface ip address tap0 192.168.100.1/31
In this case, ARP-Request was sent with an incorrect sender IP:
Sender IP Address: 192.168.100.0
Target IP Address: 192.168.100.0
Type: fix
Change-Id: I8712bcf9fd0cb96788fe4a6c4b4827af774c0ab9
Signed-off-by: Artem Glazychev <[email protected]>
Changbin Park [Wed, 23 Jul 2025 05:39:58 +0000 (14:39 +0900)]
tcp: handle SYN while CLOSED state
Existing code handled SYN packets in TIME_WAIT state already. And,
according to the comment it should handle for CLOSED state as well.
But, it only checks for the TIME_WAIT state.
docs: Handle SYN packets in the CLOSED state as well
Issue: https://github.com/FDio/vpp/issues/3617
Type: fix
Signed-off-by: Changbin Park <[email protected]>
Change-Id: I478e3560ed509fb282d6cdb4a16b6f4663effb31
Konstantin Kogdenko [Sat, 23 Aug 2025 09:09:04 +0000 (12:09 +0300)]
vhost: move tracing out of processing loop
Before this fix vlib_trace_buffer was being called on not fully
initialized vlib_buffer_t (current_length == 0).
This caused trace filter functions to work incorrectly.
Type: fix
Change-Id: Ia8974af90ce91022ce1436ab54ab630bacce5bcf
Signed-off-by: Konstantin Kogdenko <[email protected]>
Adrian Villin [Wed, 27 Aug 2025 10:39:53 +0000 (12:39 +0200)]
hs-test: parse bytes/sec in TcpWithLoss tests
Type: test
Change-Id: I29ff3caa6a1f573a7e285c17416a24a74f4767f7
Signed-off-by: Adrian Villin <[email protected]>
Matus Fabian [Mon, 25 Aug 2025 17:05:02 +0000 (13:05 -0400)]
http: http2_format_req print stream state
instead of connection state
Type: improvement
Change-Id: Iaf03a3cb3f78b05d3002f0edee753797c213e651
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Mon, 25 Aug 2025 20:42:13 +0000 (16:42 -0400)]
http: http2_app_close_callback free req when done
Type: fix
Change-Id: I1bb8730cc4f6e759eebec37ef7c887b7e20faf3a
Signed-off-by: Matus Fabian <[email protected]>
Florin Coras [Mon, 25 Aug 2025 14:39:27 +0000 (10:39 -0400)]
hsa: fix echo server rx callback crash
Handle rx after close.
Type: fix
Change-Id: I9507857ba8903b674e249797d2837981382b4aec
Signed-off-by: Florin Coras <[email protected]>
Florin Coras [Mon, 25 Aug 2025 13:11:19 +0000 (09:11 -0400)]
session: fix app listener free if listen returns
If listen fails, regrab app listener in case transports reallocated the
app listener pool.
Type: fix
Change-Id: Ifeb512ececacd9bd8f201eac2e08ab4ee6f1cdd5
Signed-off-by: Florin Coras <[email protected]>
Florin Coras [Mon, 25 Aug 2025 12:54:58 +0000 (08:54 -0400)]
hsa: fix test client args check to allow default port
Type: fix
Change-Id: Ic81370ba1c4cb83793b29fc9478eee8537136aa7
Signed-off-by: Florin Coras <[email protected]>
Adrian Villin [Wed, 20 Aug 2025 10:46:12 +0000 (12:46 +0200)]
hs-test: monitor performance of some loss tests
+ updated asserts
Type: test
Change-Id: I4aec44dde3e6c0472fca9fe6a7f80c068070f92e
Signed-off-by: Adrian Villin <[email protected]>
Matus Fabian [Sun, 24 Aug 2025 16:01:19 +0000 (12:01 -0400)]
http: remove assert in http2_req_state_tunnel_tx
proxy app can send new payload before we were able to send previous
Type: fix
Change-Id: I7d0c2605da38e7495e3e26705f58a5370d1e296f
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Fri, 22 Aug 2025 13:13:59 +0000 (09:13 -0400)]
hs-test: fix core file detection
Type: test
Change-Id: I7d6c494d66a053124d176a261b65dabe1a125215
Signed-off-by: Matus Fabian <[email protected]>
Matus Fabian [Sun, 24 Aug 2025 14:36:15 +0000 (10:36 -0400)]
hs-test: limit wget retries in setup scripts
by default wget do 20 retries, we want ti fails fast if internet
connectivity is broken
Type: test
Change-Id: Ia7222c8ac6f7b5571dc1c29949aa2b8de2786afe
Signed-off-by: Matus Fabian <[email protected]>
Florin Coras [Wed, 20 Aug 2025 09:05:41 +0000 (05:05 -0400)]
tls: avoid reallocating default ssl ctx for clients
Type: improvement
Change-Id: I8933478342789034509f6b8dd141baf706970082
Signed-off-by: Florin Coras <[email protected]>
Aritra Basu [Thu, 21 Aug 2025 22:32:49 +0000 (15:32 -0700)]
vnet: fix negative table-id
Type: fix
Change-Id: Ic29bdd854b2b218d2b56446cd58ea185d4e485ae
Signed-off-by: Aritra Basu <[email protected]>
Matus Fabian [Wed, 20 Aug 2025 12:49:45 +0000 (08:49 -0400)]
http: h2 client multiplexing fix
do not try to cleanup ho in http_conn_established when called from
http2_conn_connect_stream_callback
Type: fix
Change-Id: I91422297b69cfef82b622113e194596205b44075
Signed-off-by: Matus Fabian <[email protected]>
Adrian Villin [Fri, 15 Aug 2025 12:52:53 +0000 (14:52 +0200)]
hs-test: iperf improvements
- added AssertIperfMinTransfer to KindIperfVclTest
- fixed 'make cleanup-perf'
Type: test
Change-Id: I50f7d837b1d4d842cb7464a5ee08cbecdea7adcd
Signed-off-by: Adrian Villin <[email protected]>
Semir Sionek [Mon, 18 Aug 2025 13:07:11 +0000 (13:07 +0000)]
hsa: fix typo in vcl_test_client arg check
Type: fix
Change-Id: Ifd0ef3dfcfc2cfd1bc13f2a1727c5f4a36d4a746
Signed-off-by: Semir Sionek <[email protected]>