Klement Sekera [Fri, 28 Jan 2022 11:31:01 +0000 (11:31 +0000)]
tests: support skipping to test method with STEP
Allow entering a test name on stack trace window with STEP=y option
instead of a number. This allows to run a whole suite and skip all tests
until a particular test is hit.
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I23e45f8022b82545365b8921390e0e106e02b39c
Nathan Skrzypczak [Mon, 24 Jan 2022 16:10:41 +0000 (17:10 +0100)]
cnat: maglev fixes & improvements
This fixes the maglev logic which previously
included a wrong simplication.
It moves the maglev logic to its own file,
and adds a test function in the debug cli.
Type: improvement
Change-Id: I2790ae2a26fc1c5739ff02f41d436bfcafd5b380
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Sivaprasad Tummala [Fri, 21 Jan 2022 21:39:18 +0000 (03:09 +0530)]
snort: feature support on interface output
support snort plugin on interface output via ip4-output fa
Type: feature
Signed-off-by: Sivaprasad Tummala <Sivaprasad.Tummala@intel.com>
Change-Id: I2d5e7d0719c03f88806b12debfe596675dbd66c1
Ray Kinsella [Thu, 27 Jan 2022 09:55:02 +0000 (09:55 +0000)]
perfmon: topdown level 1 and 2 for icx
Topdown level 1 and 2 for Intel Ice Lake (ICX). Limiting topdown support
to THREAD for the moment on Ice Lake, as NODE support is still
unreliable. Also removing Topdown Level 1 from Sapphire Rapids onwards,
as Topdown LeveL 2 also shows Level 1 on Sapphire, and it reduces the
overall number of bundles.
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: Iaa68b711dc8b6fb1090880b411debadb3c37f8bc
Ray Kinsella [Fri, 28 Jan 2022 05:01:52 +0000 (05:01 +0000)]
perfmon: fix init of bundles with pseudo events
Previously Linux pseudo events were being counted as multiple fixed
events, such that a bundle with pseudo events could exceed the number of
available fixed counters. Reworked to ignore pseudo events in the
accounting for the moment.
Type: fix
Fixes:
0024e53ad
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: Ic938f8266fd04d7731afbd02e261c61ef22a8522
Ray Kinsella [Fri, 28 Jan 2022 04:59:00 +0000 (04:59 +0000)]
perfmon: check for duplicates after other checks
Move checking for duplicate bundle names after the other checks.
Type: fix
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I7fed5be758814e166eb8756b3df090130ac13bfd
Florin Coras [Fri, 28 Jan 2022 23:26:39 +0000 (15:26 -0800)]
http_static: incorporate builtinurl plugin
External handlers can still be registered via hss_register_url_handler
but url handlers must be enabled when server is created.
builtinurl plugin to be removed in a future patch
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I94e103d908b9e118c7927b997a21ce3f67809889
Florin Coras [Sat, 29 Jan 2022 01:41:54 +0000 (17:41 -0800)]
linux-cp: check if libmnl headers are present
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Icb86be8b37fa821f05300ee4415065ca96425fcb
Ray Kinsella [Fri, 28 Jan 2022 08:56:57 +0000 (08:56 +0000)]
perfmon: topdown backend bound core bundle
Add a bundle to measure topdown backend bound core cycles, will indicate if any
given execution port has contention.
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I37d1b38c101ac42d51c10fa4452b822d34b729c9
Florin Coras [Sat, 29 Jan 2022 02:35:12 +0000 (18:35 -0800)]
misc: remove mbedtls from dependencies
Type: make
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I461d1f6289a4bb97c77952b87a35c90f37ec9d26
Pim van Pelt [Fri, 28 Jan 2022 14:29:21 +0000 (14:29 +0000)]
linux-cp: Fix coverity issue
Type: fix
Possible negative return in open(), do not use curr_ns_fd if it is
negative. Addresses Coverity issue 248535
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Change-Id: I8429ede0f1fe9fe6619e3c4dbd83adb620ea62c2
Klement Sekera [Tue, 16 Nov 2021 11:14:40 +0000 (12:14 +0100)]
misc: vppctl - fix coverity warning
Calculate space left to silence coverity.
Type: fix
Fixes:
31f192434660
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I9cd2e91ce74444e2625bf86721a8d3e44bf6afdd
Klement Sekera [Tue, 16 Nov 2021 11:19:26 +0000 (12:19 +0100)]
misc: vppctl - fix coverity warning
Check that provided path fits into defined buffer. Don't write too many
bytes to avoid having an unterminated string.
Type: fix
Fixes:
31f192434660
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I1ea8b6d6a3474c032e542b6980ed14bac72093a8
Neale Ranns [Fri, 5 Feb 2021 09:04:35 +0000 (09:04 +0000)]
linux-cp: Linux Control Plane Netlink Listener
Type: feature
please see FEATURE.yaml for details.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Signed-off-by: Jon Loeliger <jdl@netgate.com>
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I6255fd9953d0b03e6b4fe75b67a6845a7c206f74
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Damjan Marion [Tue, 25 Jan 2022 22:11:47 +0000 (23:11 +0100)]
build: fix compilation on OpenSSL 3.0
So far by suppressing depreciation messages, as there was no transition
period.
Type: make
Change-Id: I9887613fd71a22bf11bf22a04c129aca4a16867f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Sun, 9 Jan 2022 13:27:04 +0000 (13:27 +0000)]
vppinfra: sparse_vec_free free should free the sparse_vec_header not the embedded vec_header_t
Type: fix
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ie9532543c4d4439beec8ce097eafa34588ad1266
Ray Kinsella [Wed, 12 Jan 2022 04:47:27 +0000 (04:47 +0000)]
perfmon: frontend and backend boundness bundles
Renamed memory stalls to topdown backend-bound-mem, added topdown
frontend-bound-latency and frontend-bound-bandwidth.
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I70f42b6b63fe2502635cad4aed4271e2bbdda5f1
Ray Kinsella [Fri, 26 Nov 2021 14:57:35 +0000 (14:57 +0000)]
perfmon: prune bundles by available pmu counters
Prune perfmon bundles that exceed the number of available pmu counters.
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I70fec26bb8ca915f4b980963e06c2e43dfde5a23
Florin Coras [Thu, 27 Jan 2022 00:28:58 +0000 (16:28 -0800)]
http_static: code cleanup
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic8838c8ef558d671740094a98b5a627a18c8c808
Ray Kinsella [Fri, 26 Nov 2021 09:02:20 +0000 (09:02 +0000)]
perfmon: add cli to show perf config
Added a cli to show Linux perf config for a give perfmon bundle. This
makes it easier to format Linux perf commands for next level analysis.
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I9adafa7d441b72120390d186e3c8f884b1bc9828
Florin Coras [Wed, 26 Jan 2022 08:15:03 +0000 (00:15 -0800)]
hsa: cleanup and rename http test server
- cleanup data structures, functions and cli
- remove option to return static html. For similar results, use
http static server
- rename to http_cli.c as it better describes what the app does
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I502e7566fba4376c68fbe41de9e45079a159e864
Florin Coras [Tue, 25 Jan 2022 02:46:03 +0000 (18:46 -0800)]
http_static: refactor to use http transport
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I66396a1879eb3c87ef64783eab82a22896413cd0
Florin Coras [Mon, 24 Jan 2022 20:47:50 +0000 (12:47 -0800)]
http: generalize buffer implementation
And add support for passing of pointers
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ida3e5ae4ff7842366ae92a5f33c5e761355951a6
Damjan Marion [Wed, 26 Jan 2022 10:07:47 +0000 (11:07 +0100)]
dpdk: not having cryptodev resources should not produce warnings
Type: fix
Change-Id: Ifb2e4d93dcf8648b1bd66f4c0ee937295683bd87
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Mon, 24 Jan 2022 23:19:29 +0000 (23:19 +0000)]
vppinfra: add support for mask_compare for u64
Type: improvement
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: Ie323a8445f8540cd26d92eb61807afad7f7a0b74
Florin Coras [Tue, 25 Jan 2022 19:41:58 +0000 (11:41 -0800)]
http hsa: avoid extra space in request
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I70f22350811ef3cd029d69af75659f95cc9a74c8
Klement Sekera [Mon, 24 Jan 2022 21:37:09 +0000 (21:37 +0000)]
api: vapi: honor non-blocking setting
Pass correct conditional based on how vapi is configured wrt blocking.
Type: fix
Fixes:
3fca567ff438145e28dd1318ad5b1734c1091257
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I47adca19f104d7a758cb2940e93c9fd8c7cc9bfa
Klement Sekera [Mon, 24 Jan 2022 22:30:04 +0000 (22:30 +0000)]
ip: reassembly - fix missing ip6 owner thread init
Initialize ip6 memory owner thread index in reassembly context to avoid
unnecessary handovers.
Type: fix
Fixes:
630ab5846bceddf8d663e9f488a2dc0378949827
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I2996caf1f82a0649c97d481b74dce24a96dce326
Steven Luong [Fri, 3 Dec 2021 20:05:45 +0000 (12:05 -0800)]
bonding: refactor bonding hash functions to vnet/hash
- move bonding hash functions to vnet/hash
- register the corresponding hash function when the bond interface
is created
- remove floating point vec256 usage
- split bond_tx_inline into bond_tx_hash and bond_tx_no_hash
Type: refactor
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I1698023c48470290d11c9b2bd00996eee9aa079d
Florin Coras [Tue, 25 Jan 2022 07:30:08 +0000 (23:30 -0800)]
http: fix rescheduling when transport fifo full
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I5ae1039fd614865154bae94150371e42f3e6fd2a
Gabriel Oginski [Mon, 24 Jan 2022 13:31:45 +0000 (13:31 +0000)]
wireguard: fix passing argument
Fixed coverity-issue CID 248456.
Originally passing argument of type "uint64_t *" to function:
"memcopy_s_inline".
This patch fixes the problem by changing type of passing argument and
make a portable assumption.
Type: fix
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I17e4583a05ea1263e4d8a4acc9949454e5fd92c0
Klement Sekera [Mon, 10 Jan 2022 21:57:27 +0000 (21:57 +0000)]
nat: TCP state tracking based on RFC 7857/RFC 6146
Implement proper state machine based on above RFCs. ACKs to SYNs/FINs
are no longer required/tracked. This is more friendly to peers and
accounts for lost packets and retransmits.
This change also means that all traffic is translated and forwarded
while in transitory timeout, which helps delivering e.g. retransmitted
FINs, FINACKs and other messages.
Also support reopening a session in transitory timeout after seeing both
FINs by seeing both SYNs again. This helps quick connection
reestablishment if the peers want to.
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Miklos Tirpak <miklos.tirpak@gmail.com>
Change-Id: Ibf521c79463472db97e593bfa02b32b4a06dfd2a
Gabriel Oginski [Thu, 25 Nov 2021 08:21:41 +0000 (08:21 +0000)]
dpdk-cryptodev: add support chacha20-poly1305
Originally cryptodev doesn't support chacha20-poly1305 with aad length
0.
This patch add support in cryptodev for chacha20-poly1305 with aad
length 0. This length is using in Wireguard.
Type: improvement
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I0608920bb557d7d071e7f9f37c80cf50bad81dcc
Leung Lai Yung [Mon, 27 Dec 2021 04:14:20 +0000 (04:14 +0000)]
policer: fix memory leak
Type: fix
policer_add_del does not free "clib_error_t*" when it is not null.
Signed-off-by: Leung Lai Yung <benkerbuild@gmail.com>
Change-Id: I00ad8e53797e46adeb1819856262bb9f3c068c63
Klement Sekera [Tue, 26 Oct 2021 09:35:48 +0000 (11:35 +0200)]
sr: fix coverity warning
Remove dead code. Pool element cannot be NULL.
Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I7812efdcdc414af8352474c4e527c878d2e2c459
Klement Sekera [Tue, 26 Oct 2021 09:33:30 +0000 (11:33 +0200)]
ip6-nd: fix coverity warning
Restructure code to avoid NULL dereference.
Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: If3a4319f1b93af272b7b315a9b15ba4ee1f8e7ae
Damjan Marion [Wed, 19 Jan 2022 17:13:34 +0000 (18:13 +0100)]
vppinfra: fix compilation on riscv
Type: fix
Change-Id: I2bc58a711c9429d7989bfd0bfccd289d43fc35d0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Sat, 22 Jan 2022 21:27:21 +0000 (13:27 -0800)]
session: separate transports from apps in show cli
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If9d6153ddce836ec34842fb5e581b2f4565e33df
Florin Coras [Fri, 21 Jan 2022 02:10:26 +0000 (18:10 -0800)]
session: update time for list of subscribers
Instead of constantly scanning all transport vfts for update time
functions, build list at transport enable time.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Id5c07cc03ee1fdd072ebbbd40119d1a440a5e3b1
Gabriel Oginski [Wed, 17 Nov 2021 10:27:00 +0000 (10:27 +0000)]
wireguard: add async mode for decryption packets
Originally wireguard doesn't support async mode for decryption packets.
This patch add async mode for decryption in wireguard.
In addition, it contains some performance improvement such as
prefetching packet header and reducing the number of current time
function calls.
Type: improvement
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: Ieba6ae0078f3ff140c05b517891afb57232b3b7d
Gabriel Oginski [Wed, 10 Nov 2021 07:59:56 +0000 (07:59 +0000)]
wireguard: add async mode for encryption packets
Originally wireguard doesn't support async mode for encryption packets.
This patch add async mode for encryption in wireguard and also adds
support chacha20-poly1305 algorithm in cryptodev for async handler.
In addition it contains new command line to activate async mode for wireguard:
set wireguard async mode on|off
and also add new command to check active mode for wireguard:
show wireguard mode
Type: improvement
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I141d48b42ee8dbff0112b8542ab5205268089da6
Florin Coras [Tue, 18 Jan 2022 22:10:19 +0000 (14:10 -0800)]
hsa: refactor test http server to use http proto
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie7c80d75ca511e1905fa73db48d329f7e1fa86ff
Damjan Marion [Thu, 20 Jan 2022 17:45:39 +0000 (18:45 +0100)]
fib: missing include
Type: fix
Change-Id: Idefded3443b383ba916a66051b003aac106af8e8
Signed-off-by: Damjan Marion <damarion@cisco.com>
Gabriel Oginski [Thu, 4 Nov 2021 07:23:08 +0000 (07:23 +0000)]
wireguard: add burst mode
Originally wireguard does packet by packet encryption and decryption.
This patch adds burst mode for encryption and decryption packets. In
addition, it contains some performance improvement such as prefetching
packet header and reducing the number of current time function calls.
Type: improvement
Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: I04c7daa9b6dc56cd15c789661a64ec642b35aa3f
Benoît Ganne [Wed, 19 Jan 2022 17:26:43 +0000 (18:26 +0100)]
dpdk: fix compilation for DPDK < 21.11
Type: fix
Change-Id: Ic5b74fb7a8e479e8cdccbb6a564ff3fdd299455c
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Thu, 13 Jan 2022 19:59:44 +0000 (11:59 -0800)]
http: add http protocol plugin
Basic HTTP/1.1 server side implementation.
Type: feature
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I06bddaf7f11e28db802b4cd7ef8160c78cb019b6
Florin Coras [Wed, 19 Jan 2022 04:51:08 +0000 (20:51 -0800)]
svm: update number of segments in svm_fifo_segments
In addition to returning the number of bytes also update the number of
segments to reflect the number used.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia87dc2aa62cea38b18dfa83df94dc2abe29d5121
Florin Coras [Tue, 18 Jan 2022 22:11:11 +0000 (14:11 -0800)]
svm: fix return for partial segment enqueue
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I9953d9bf04e708ac8ea475127e3d2f606cc1c8d9
Andrew Yourtchenko [Wed, 19 Jan 2022 12:34:15 +0000 (13:34 +0100)]
misc: Initial 22.06-rc0 commit
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I6b56d2cc785b505e77df0d24a1f441a4c09dc9a8
Fan Zhang [Tue, 18 Jan 2022 15:51:21 +0000 (15:51 +0000)]
dpdk: add qat gen4-b device support
Type: feature
This patch adds the GEN4-b support to DPDK Cryptodev PMD and
fixes a problem on its raw api AEAD enqueue.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: I3a1a9b0ae51a5725ce9d5265a059e26ceb16c49e
Damjan Marion [Tue, 18 Jan 2022 12:42:24 +0000 (13:42 +0100)]
dpdk: limit number of TX queues to max supported
Also improve logging....
Type: fix
Change-Id: I3d3aee52cd45e59ecd6ce13bd516c66559638fec
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Tue, 18 Jan 2022 15:24:23 +0000 (16:24 +0100)]
vlib: allow bigger scalar data size
Type: improvement
Change-Id: I1031c6ce80d90814edda7b52b11039874b95714f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Tue, 18 Jan 2022 13:52:47 +0000 (08:52 -0500)]
misc: fix coverity warnings
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I8ea0193ebb2a721a0582451ffd64c4063ac6d233
Pim van Pelt [Tue, 18 Jan 2022 13:30:52 +0000 (13:30 +0000)]
linux-cp: fix possible null deref
Found by coverity as defect id 243763
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Type: fix
Change-Id: Idbada5528a1f2625f6498072d538edf306268b6d
Mohsin Kazmi [Tue, 18 Jan 2022 12:53:57 +0000 (13:53 +0100)]
virtio: remove admin-up flag during interface creation
Type: fix
During the interface creation time, (by default) admin-up
flag is locally set for tap and virtio interfaces.
While, in VPP the state of these interfaces are still
admin-down. User needs to explicitly call
'set interface state <interface-name> up' to admin-up the
newly created tap or virtio interface(s) in VPP. So, this
behavior is inconsistent.
This patch fixes the issue to have consistent behavior
for given interface between local and global administration
state.
Change-Id: Ifd8904a09fbdbe7b386874ac3231dc0527064518
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Tetsuya Murakami [Tue, 18 Jan 2022 11:43:07 +0000 (03:43 -0800)]
srv6-mobile: Fix the coverity issue
Type: fix
Signed-off-by: Tetsuya Murakami <tetsuya.mrk@gmail.com>
Change-Id: I35c36401ce3ab59900be59a9abddba66f6399978
Damjan Marion [Mon, 17 Jan 2022 13:49:17 +0000 (14:49 +0100)]
vnet: distinguish between max_frame_size and MTU
Type: improvement
Change-Id: I3659de6599f402c92e3855e3bf0e5e3388f2bea0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Mon, 10 Jan 2022 10:38:43 +0000 (10:38 +0000)]
ipsec: IPSec interface correct drop w/ no protection
Type: improvement
When an IPSec interface is first constructed, the end node of the feature arc is not changed, which means it is interface-output.
This means that traffic directed into adjacencies on the link, that do not have protection (w/ an SA), drop like this:
...
00:00:01:111710: ip4-midchain
tx_sw_if_index 4 dpo-idx 24 : ipv4 via 0.0.0.0 ipsec0: mtu:9000 next:6 flags:[]
stacked-on:
[@1]: dpo-drop ip4 flow hash: 0x00000000
00000000: 4500005c000100003f01cb8cac100202010101010800ecf40000000058585858
00000020: 58585858585858585858585858585858585858585858585858585858
00:00:01:111829: local0-output
ipsec0
00000000: 4500005c000100003f01cb8cac100202010101010800ecf40000000058585858
00000020: 5858585858585858585858585858585858585858585858585858585858585858
00000040: 58585858585858585858585858585858585858585858585858585858c2cf08c0
00000060: 2a2c103cd0126bd8b03c4ec20ce2bd02dd77b3e3a4f49664
00:00:01:112017: error-drop
rx:pg1
00:00:01:112034: drop
local0-output: interface is down
although that's a drop, no packets should go to local0, and we want all IPvX packets to go through ipX-drop.
This change sets the interface's end-arc node to the appropriate drop node when the interface is created, and when the last protection is removed.
The resulting drop is:
...
00:00:01:111504: ip4-midchain
tx_sw_if_index 4 dpo-idx 24 : ipv4 via 0.0.0.0 ipsec0: mtu:9000 next:0 flags:[]
stacked-on:
[@1]: dpo-drop ip4 flow hash: 0x00000000
00000000: 4500005c000100003f01cb8cac100202010101010800ecf40000000058585858
00000020: 58585858585858585858585858585858585858585858585858585858
00:00:01:111533: ip4-drop
ICMP: 172.16.2.2 -> 1.1.1.1
tos 0x00, ttl 63, length 92, checksum 0xcb8c dscp CS0 ecn NON_ECN
fragment id 0x0001
ICMP echo_request checksum 0xecf4 id 0
00:00:01:111620: error-drop
rx:pg1
00:00:01:111640: drop
null-node: blackholed packets
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I7e7de23c541d9f1210a05e6984a688f1f821a155
Damjan Marion [Thu, 6 Jan 2022 20:14:08 +0000 (21:14 +0100)]
interface: improve MTU handling
- per hw-interface-class handlers
- ethernet set_mtu callback
- driver can now refuse MTU change
Type: improvement
Change-Id: I3d37c9129930ebec7bb70caf4263025413873048
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Sun, 16 Jan 2022 21:47:55 +0000 (22:47 +0100)]
vnet: introduce vnet_error()
Decouples vnet return values from API return codes.
New vnet_error() creates vnet_error_t whicgh contains both vnet function
return value and return string.
vnet_api_error() converts vlib_error_t constructed with vnet_error() to
API return value.
Type: improvement
Change-Id: I17042954d48c010150fc1dfc5fce9330e8149e87
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 Jan 2022 23:28:14 +0000 (00:28 +0100)]
vppinfra: bitops cleanup
Type: refactor
Change-Id: I7fa113e924640f9d798c1eb6ae64b9c0a9e2104c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Sat, 15 Jan 2022 16:30:45 +0000 (11:30 -0500)]
mactime: fix memory leak
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I1ef5cb250ac1e35b9a5003597eda3d54d2e5ca73
Damjan Marion [Wed, 12 Jan 2022 23:28:14 +0000 (00:28 +0100)]
dpdk: refactor device setup
Type: improvement
Change-Id: I9772088bca176fd0fdb162677ec55c59aa8f3adf
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 14 Jan 2022 10:57:40 +0000 (11:57 +0100)]
dpdk: fix burst function output
Type: fix
Fixes:
65105c95f
Change-Id: I8dee4b560a49891f954d7eb8e79ea535cedeaa88
Signed-off-by: Damjan Marion <damarion@cisco.com>
Marcel Cornu [Thu, 13 Jan 2022 23:48:54 +0000 (23:48 +0000)]
crypto-ipsecmb: bump to ipsecmb v1.1
Type: feature
This patch bumps ipsecmb library version from 1.0 to 1.1
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
Change-Id: I9851fef2944a6e213d97039bb6dd48cc0df1e4b4
Florin Coras [Thu, 13 Jan 2022 07:01:29 +0000 (23:01 -0800)]
hsa: echo clients connect improvements
Do burst of connects with barrier held.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I7e6dcf097022b56d6880de0cba7b8492a938077b
Florin Coras [Thu, 13 Jan 2022 01:59:31 +0000 (17:59 -0800)]
hsa: cleanup echo client app
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iada49493635a9c3db8b725ca367d0d4ca5007357
Florin Coras [Wed, 12 Jan 2022 18:32:52 +0000 (10:32 -0800)]
hsa: allow large segments for echo apps
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I4e60d83644878f7d267582c2497d785e0f6facc1
Damjan Marion [Tue, 11 Jan 2022 22:21:08 +0000 (23:21 +0100)]
dpdk: bump to DPDK v21.11
Type: feature
This patch bumps dpdk version from 21.08 to 21.11
Change-Id: Id37fdba75f1ea4f4eac3c92226f3b1c539e1daca
Signed-off-by: Dastin Wilski <dastin.wilski@gmail.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 Jan 2022 17:46:29 +0000 (18:46 +0100)]
dpdk: improve logging
Type: improvement
Change-Id: If61d7409ff14b9f771c1dc8ec9f35e179cea7a28
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 Jan 2022 18:17:26 +0000 (19:17 +0100)]
dpdk: update packet offload flags
Type: improvement
Change-Id: Ib2c55dd2a246a690b2089f5c0b88508f732281f2
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Fri, 9 Apr 2021 02:10:07 +0000 (19:10 -0700)]
session: pass tx buffers in bulk to transports
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1025cccd784f80b557847f69c3ea1ada5c9de60d
Ray Kinsella [Wed, 12 Jan 2022 06:15:34 +0000 (06:15 +0000)]
perfmon: skipping bundle message
Change the skipping bundle message to debug
Type: refactor
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I942ff72bd9c26ccad923442fdedddf22ba75e117
Damjan Marion [Wed, 12 Jan 2022 13:09:01 +0000 (14:09 +0100)]
dpdk: postpone updating runtime data
This prevents crash due to worker tread accessing device data
while device vector is growing.
Type: fix
Change-Id: I5cf9f53ddbe97fe52db8fd431ea7c0e480f3d4bc
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 Jan 2022 10:13:24 +0000 (11:13 +0100)]
dpdk: use blunt force to skip irrelevant and confusing logs
Type: improvement
Change-Id: I2cd37f0c1a1ed33438bfa4b7590e5609e5094fc8
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 Jan 2022 09:52:14 +0000 (10:52 +0100)]
dpdk: always display burst function name
Also change the way how we dig function pointer so it works with dpdk
21.11+
Type: improvement
Change-Id: I38d5909eea9c2893651710bd45057b1635aa7b37
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ole Troan [Tue, 11 Jan 2022 15:08:23 +0000 (16:08 +0100)]
ip: coverity illegal access in ip6_ext_header_walk
*** CID 243670: Memory - illegal accesses (OVERRUN)
/src/vnet/ip/ip6_packet.h: 713 in ip6_ext_header_walk()
CID 243670: Memory - illegal accesses (OVERRUN)
Overrunning array "res->eh" of 4 4-byte elements at
element index 5 (byte offset 23) using index "i" (which evaluates to 5).
Type: fix
Fixes:
03092c1
Change-Id: I27e0435cf10534f3b41e11bf7a5629b5428b0651
Signed-off-by: Ole Troan <ot@cisco.com>
Dastin Wilski [Tue, 21 Dec 2021 08:51:52 +0000 (08:51 +0000)]
dpdk-cryptodev: run dequeue again in case of interrupt mode being used
Type: fix
Change-Id: I7aa172e58c970c4971db6ef2ff5b199b7f3c0b99
Signed-off-by: Dastin Wilski <dastin.wilski@gmail.com>
Dastin Wilski [Wed, 12 Jan 2022 08:28:45 +0000 (09:28 +0100)]
crypto: omit loop iteration
This fix adds check that will omit loop iteration
in case dequeue handler is zero.
Type: fix
Signed-off-by: Dastin Wilski <dastin.wilski@gmail.com>
Change-Id: I7526e3fe7d8c8da9662b4e9204efd5e2d8be1908
Florin Coras [Tue, 11 Jan 2022 21:58:54 +0000 (13:58 -0800)]
hsa: allow use of default port for vcl test apps
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I30ec7af3baf56d74a5050ea9335053e6e12de630
Pim van Pelt [Thu, 9 Sep 2021 17:53:09 +0000 (17:53 +0000)]
linux-cp: Add VPP->Linux synchronization
Part 1 -- notes in https://ipng.ch/s/articles/2021/08/13/vpp-2.html
Add the ability for VPP to copy out (sync) its state from the dataplane
to Linux Interface Pairs, when they exist. Gated by a configuration
flag (linux-cp { lcp-sync }), and by a CLI option to toggle on/off,
synchronize the following events:
- Interface state changes
- Interface MTU changes
- Interface IPv4/IPv6 address add/deletion
In VPP, subints can have any link state and MTU, orthogonal to their
phy. In Linux, setting admin-down on a phy forces its children to be
down as well. Also, in Linux, MTU of children must not exceed that of
the phy. Add a state synchronizer which walks over phy+subints to
ensure Linux and VPP end up in the same consistent state.
Part 2 -- notes in https://ipng.ch/s/articles/2021/08/15/vpp-3.html
Add the ability for VPP to autocreate sub-interfaces of existing Linux
Interface pairs. Gated by a configuration flag
(linux-cp { lcp-auto-subint }), and by a CLI option to toggle on/off,
synchronize the following event:
- Sub-interface creation (dot1q, dot1ad, QinQ and QinAD)
A few other changes:
- Add two functions into netlink.[ch] to delete ip4 and ip6 addresses.
- Remove a spurious logline (printing MTU) in netlink.c.
- Resolve a TODO around vnet_sw_interface_supports_addressing()
Type: improvement
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Change-Id: I34fc070e80af4013be58d7a8cbf64296cc760e4e
Signed-off-by: Pim van Pelt <pim@ipng.nl>
Florin Coras [Mon, 10 Jan 2022 17:15:41 +0000 (09:15 -0800)]
tls: ssl close only after all data drained
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia77b26db61b6f58b4ff659f09192b4ea93ed50b4
Mohsin Kazmi [Tue, 11 Jan 2022 11:34:56 +0000 (11:34 +0000)]
vlib: fix the total len not including first buffer formating
Type: fix
total len not including first buffer is in vlib_buffer_t second cacheline.
It is not reset after the buffer has been consumed. It leads to printing
garbage in packet trace for subsequent use of this buffer. This patch
fixes the issue to only print when VLIB_BUFFER_NEXT_PRESENT flag is set.
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: Ied72308bdb907a5e1ca16d181f2add062807e968
Damjan Marion [Sun, 9 Jan 2022 13:05:27 +0000 (14:05 +0100)]
dpdk: offloads cleanup
Type: improvement
Change-Id: Ibf43aa483548e6055e4b851ad893371d7af3b018
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Mon, 10 Jan 2022 15:32:35 +0000 (15:32 +0000)]
misc: fix the uninitialization error
Type: fix
| src/vppinfra/vector/toeplitz.c:69:9: error: ‘kv’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
| src/vppinfra/memcpy_x86_64.h:45:17: error: ‘*((void *)&key+16)’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
| *(u8x16u *) d = *(u8x16u *) s;
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
| src/vnet/gre/interface.c:356:20: note: ‘*((void *)&key+16)’ was declared here
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I71614da2821ebda5200a0cb9437a7aad0c42fbb2
Florin Coras [Mon, 10 Jan 2022 22:26:21 +0000 (14:26 -0800)]
session: increase postponed mq message min size
Reported by coverity
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ib1db0d120321b061f4c2c20117acdfb6e7dc0626
Florin Coras [Mon, 10 Jan 2022 21:44:45 +0000 (13:44 -0800)]
session: fix segment manager format coverity warning
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia32536a76aa3f92f80ee2cd027a9a010c19b861a
Damjan Marion [Mon, 10 Jan 2022 19:38:57 +0000 (19:38 +0000)]
interface: refactor interface capabilities code, part 2
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: Ie595e69af8657b0ee18a84ac71c5d433108d9ef8
jinsh [Sat, 18 Dec 2021 14:57:38 +0000 (22:57 +0800)]
vrrp: vrrp in unicast mode,interface not add virtual ip addresss
Type: fix
Signed-off-by: jinsh <jinsh11@chinatelecom.cn>
Change-Id: Id80601bc753c59c4ea95ff5f74f9b15c40c01e35
Florin Coras [Mon, 10 Jan 2022 03:03:09 +0000 (19:03 -0800)]
session: allow pacer to send when bucket hits 0
So after bucket reset session can send max burst of bytes.
Also, reset pacer bucket to 0 not min burst
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iced8948c407e6647e6eb4caff5c62c06d45ce0bf
Florin Coras [Mon, 10 Jan 2022 02:18:10 +0000 (18:18 -0800)]
session: deschedule sessions with no data to send
This ensures the scheduler always tracks sessions that are descheduled,
i.e., do not have events in the old io events list. When app retries to
send, clear descheduled flag and potentially the pacer.
Consequently, transports no longer need to reset the pacer when
sessions are rescheduled after a long app tx pause.
This also fixes a tcp bug whereby the pacer was reset too often when
snd_una was equal to snd_nxt as there was no way to distinguish betwen
app tx breaks and congestion.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Id3cc6c98cd76299e15030e504380dcf3c04c5189
Florin Coras [Mon, 10 Jan 2022 01:20:28 +0000 (17:20 -0800)]
session: fix pacer bucket update cast
Make sure comparison is done between two i64 values.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ief5706f2bd9415587994a5b665d5e380b8e14f68
Damjan Marion [Sun, 9 Jan 2022 12:02:12 +0000 (13:02 +0100)]
dpdk: interface capabilities cleanup
Type: improvement
Change-Id: If5636d4376fb06da62f947c28b18c07b6ad21722
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Sun, 9 Jan 2022 12:13:13 +0000 (13:13 +0100)]
dpdk: port type code cleanup
Type: improvement
Change-Id: I4ead18dee249a27b4dbb8bbf53b6238d91042890
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Sun, 9 Jan 2022 13:24:47 +0000 (13:24 +0000)]
vppinfra: Check for NULL vec before the backwards iteration
Type: improvement
'vec_end(v) - 1' does not yield a good starting point. Check for NULL vec before the loop, so the user does not have to.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ia174ec8095bc476853cce709a7048d7a3e3b377d
Steven Luong [Wed, 15 Dec 2021 21:27:53 +0000 (13:27 -0800)]
fib: multiple memory leaks upon deleting a VRF table
fib_table->ft_locks
name string for parsing the ip table add|del name <tag> command
path list for ip4_specials in mfib
mfib->fib_entry_by_dst_address[0..32]
mfib entry path_ext, msrc->mfes_exts
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ia1e0cac577a73608ee1e4b1664b60a66322e81ce
Damjan Marion [Sat, 8 Jan 2022 20:07:03 +0000 (21:07 +0100)]
dpdk: new mbuf flags in format function
Type: improvement
Change-Id: I9022e29ebc0edb7946d374d6c3c45ee6962d725f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 5 Jan 2022 21:51:33 +0000 (22:51 +0100)]
dpdk: new flags format
introduced in DPDK 21.11
Type: improvement
Change-Id: I8c845949dd904a2bf8fa4a91e2f3ae5d704f2283
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Fri, 7 Jan 2022 23:06:42 +0000 (15:06 -0800)]
tcp: fix cubic cwnd accumulate use of bytes acked
Use what was provided instead of tc->bytes_acked
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I0ed736d2ee247e231fccdf4a969fcf6bc15b7978
Steven Luong [Thu, 6 Jan 2022 21:02:00 +0000 (13:02 -0800)]
bonding: memory leak on parsing bad CLI command
When parsing bad "create bond" command, we should call unformat_free
prior to return
Type: fix
Fixes:
9cd2d7a5a4fafadb65d772c48109d55d1e19d425
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I8f20a0e7f29de670e09633880d0aa50a51444e11