Benoît Ganne [Thu, 29 Apr 2021 16:24:24 +0000 (18:24 +0200)]
af_xdp: workaround kernel race between poll() and sendmsg()
Prior to Linux 5.6 there is a race condition between poll() and
sendmsg() in the kernel. This patch protects the syscalls with a lock
to prevent it, unless the NO_SYSCALL_LOCK flag is set at create time.
See
https://lore.kernel.org/bpf/BYAPR11MB365382C5DB1E5FCC53242609C1549@BYAPR11MB3653.namprd11.prod.outlook.com/
Type: fix
Change-Id: Ie7d4f5cb41f697b11a09b6046e54d190430d76df
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Ole Troan [Tue, 18 May 2021 13:05:23 +0000 (15:05 +0200)]
nat: add maximum configured sessions to stat segment
Add /nat44-ed/max-cfg-sessions gauge.
Reflects the configured value for configured sessions (per thread).
Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I618c8aa0daab0981399cfe9273d191fa1990ef60
Signed-off-by: Ole Troan <ot@cisco.com>
Dave Wallace [Thu, 13 May 2021 22:00:23 +0000 (18:00 -0400)]
doxygen: fix doxygen tags
- Missing tags mess up doxygen TOC heirarchy
Type: docs
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I012d55c0ae90aecc665b56903f4212ddc0643943
Dave Wallace [Thu, 20 May 2021 18:01:51 +0000 (14:01 -0400)]
tests: add role to VCLAppWorker
- Improve readability of log output with respect
to worker role
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I1a5787421b31483fa1a2558951568417dfc111d9
Matthew Smith [Thu, 6 May 2021 18:16:42 +0000 (13:16 -0500)]
linux-cp: Add delegate to adjacencies
Type: improvement
When an adjacency is created, add the linux-cp delegate on the new
adjacency so we can later deal with modifications & deletions in our
cache of adjacency data.
Add a pool of hash keys and associate the pool index for a particular
key with the adj_delegate_t. If the rewrite on an adjacency is changed,
this will allow us to delete the old hash table entry and it will not
become orphaned.
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Change-Id: I072b960c02cf377d66f7d18b8c0e9e05824a0ca3
Florin Coras [Tue, 18 May 2021 07:35:50 +0000 (00:35 -0700)]
quic: add extended vcl test
Only works with release binaries.
Type: test
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iede88713e1dbc4d1c6ae62651ff9150f88953f4d
Florin Coras [Thu, 20 May 2021 21:01:11 +0000 (14:01 -0700)]
quic: fix timer update
Use ctx timer wheel not current thread since connects are done on main
but the ctx is allocated on first worker.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ibed371bed12970d0d1ae4572f36df0bb1fb70b0f
Florin Coras [Thu, 20 May 2021 20:56:29 +0000 (13:56 -0700)]
quic: init crypto context on streams
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I901980f1f8ae8eb51c3972537ccac80f620868d0
Florin Coras [Thu, 20 May 2021 20:48:33 +0000 (13:48 -0700)]
quic: make sure aead crypto context matches quicly
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I8003198c15cd511750dc7eaae025025c733c059c
Neale Ranns [Thu, 20 May 2021 16:03:59 +0000 (16:03 +0000)]
ipsec: Default the IPSec interface MTU to 9000
Type: fix
The same value is used for other tunnel types.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I6593001918993d65f127cc9f716c95e932239842
Tianyu Li [Tue, 18 May 2021 14:19:26 +0000 (22:19 +0800)]
memif: fix gcc-10 build error on arm platform
In function ‘memcpy’,
inlined from ‘memif_device_input_zc_inline’
at src/plugins/memif/node.c:850:7,
string_fortified.h:34:10: error:
writing 16 bytes into a region of size 0 [-Werror=stringop-overflow=]
34 | return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/plugins/memif/node.c: In function ‘memif_input_node_fn_neoversen1’:
src/plugins/memif/memif.h:175:16: note:
at offset 0 to object ‘desc’ with size 0 declared here
175 | memif_desc_t desc[0];
| ^~~~
Using C99 way empty brackets for flexible array members
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: I7a6ad89f95e1b5e3f9aac36546a2559dbda9bd6c
Tianyu Li [Wed, 19 May 2021 06:45:58 +0000 (14:45 +0800)]
memif: fix input node buffer prefetch
Prefetch should be the next group of buffers instead of current buffers
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: If13967e27f74c10856ae48892420d7ade6f0c92c
Dave Wallace [Tue, 18 May 2021 21:12:16 +0000 (17:12 -0400)]
tests: don't buffer worker stdin/stdout
- Required to get VCLAppWorker stdin / stdout data
into log.txt when a test fails.
Type: test
Change-Id: I4db467986940f701750aec6d842a4d9aee22b4e6
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Dave Wallace [Thu, 20 May 2021 01:47:00 +0000 (21:47 -0400)]
bash: add set-quicly-ws function
- Set up vpp workspace to build/test/debug with
quicly source code downloaded from github.
Type: improvement
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I63a3f3b19f3b753fca1d57f8b22dad7c4e968846
Damjan Marion [Thu, 20 May 2021 13:23:50 +0000 (15:23 +0200)]
build: add .clang-tidy
Initial version
Type: make
Change-Id: Id26827e7812f794da3f17b91f78d2550e4800083
Signed-off-by: Damjan Marion <damarion@cisco.com>
Matthew Smith [Fri, 14 May 2021 22:00:15 +0000 (17:00 -0500)]
gre: Walk IPv6 adjacencies during restack
Type: fix
If a GRE tunnel is created and the peer is not resolved yet and an
IPv6 route is added which points to the tunnel, packets matching the
route will be dropped. When the tunnel peer is resolved, adjacencies
on the tunnel interface should be restacked and packets matching the
route can be encapsulated and sent..
There is a loop that is intended to do this for both IPv4 and IPv6.
The call to walk adjacencies is invoked in a "return" statement though.
So the loop is exited and the function returns before IPv6 adjacencies
are walked.
Remove the return so the loop finishes.
Change-Id: Ia4f695681713020209ea490ae4142857cea49c41
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Florin Coras [Wed, 19 May 2021 02:33:00 +0000 (19:33 -0700)]
hsa: test server incremental stats
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie8ec924ebaf006f1df84a1013050114831144a79
Florin Coras [Thu, 20 May 2021 02:28:40 +0000 (19:28 -0700)]
tls svm: prealloc tcp fifo chunks before ssl write
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I7c47b55ec6f0c83f2d13e0e737d0559a32f7c837
Florin Coras [Thu, 20 May 2021 02:33:19 +0000 (19:33 -0700)]
session: fix transport half-open cleanup call
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I47d241a8f2f9e9d0761d14dcddd3327c3b28932c
Florin Coras [Thu, 20 May 2021 01:33:04 +0000 (18:33 -0700)]
tls: fix signed unsigned comparison
On error, the signed value is cast to unsigned.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I0f94422f47e40d7c358118b2df8ab96cf4116dd0
Dave Wallace [Wed, 19 May 2021 21:01:55 +0000 (17:01 -0400)]
bash: fix vpp-make-test -g option
- Don't pollute shell with local variables
which also fixes a bug with -g option
- If WS_ROOT is not set and vpp-make-test is
invoked in the vpp root dir, then export
WS_ROOT env var
Type: fix
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I608b666f7d3020863933a8072fb34e65c7f1c988
Dave Wallace [Wed, 19 May 2021 20:37:58 +0000 (16:37 -0400)]
quic: fix memory leak & crash on connection delete
- quicly conn struct leaked on connection delete
- Occasionally connection delete is called twice
before connection is closed which caused a crash.
Type: fix
Change-Id: Ifaaaeda55f71d58c97fa4d6652bda60a3efd4b69
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Florin Coras [Tue, 18 May 2021 02:09:33 +0000 (19:09 -0700)]
session: cleanup event llist usage
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I750c856ac81d951e8c0e62c710e0f35a0c80d6f9
Damjan Marion [Fri, 14 May 2021 16:05:13 +0000 (18:05 +0200)]
memif: remove dead code
Type: fix
Change-Id: I6fce8c1f91fc5080271c1832bf40a9fb6bbcb7e3
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Mon, 17 Jun 2019 18:25:54 +0000 (20:25 +0200)]
avf: improve elogs
Change-Id: I6221e1a5924223865b3caf53590d3668965b564c
Type: fix
Fixes:
b4ff07a
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Tue, 18 May 2021 01:16:44 +0000 (18:16 -0700)]
vppinfra: add more llist macros
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ife79871c6530d2cd485928fee465baf2c8957e11
Florin Coras [Wed, 19 May 2021 14:58:49 +0000 (07:58 -0700)]
session: fix session queue node access on disable
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie4e3623e7e00456437fac5fb8f9c9083f1aa2a2e
Damjan Marion [Wed, 19 May 2021 13:13:40 +0000 (15:13 +0200)]
build: fix crypto_native compile flags check
Type: fix
Change-Id: I338036a3cac74fd5f9772bcf7685ee6970653ddb
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 19 May 2021 09:18:20 +0000 (11:18 +0200)]
interface: shared tx queue support
Type: improvement
Change-Id: I6bb7b6d6bd63b044952ab981be5b0673144c9834
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 19 May 2021 09:00:00 +0000 (11:00 +0200)]
avf: tx queue sharing fixes and improvements
Type: fix
Change-Id: I16b6720174efd98c19751e0fff36df58968484d2
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 19 May 2021 08:35:10 +0000 (10:35 +0200)]
avf: print stats in separate log class
Type: improvement
Change-Id: Ia1a4b1b1acad989cbd47a805b900160ba0071071
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Tue, 18 May 2021 07:28:59 +0000 (00:28 -0700)]
tls: fix dtls with no workers
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iecc33fda7f28c037289775ffe0525a50f89a2b8c
Florin Coras [Sun, 16 May 2021 17:58:53 +0000 (10:58 -0700)]
session: poll main thread if pending connects
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie8a15c50531f3ccd5f91dbc0779e4d9c0d146844
Klement Sekera [Mon, 17 May 2021 11:17:56 +0000 (13:17 +0200)]
nat: refactor multiple vrf tests
Replace VRF test testing multiple scenarios into more simpler tests to
improve readability and ease of debugging.
Type: refactor
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Ibaad5328c73b401f52c5fe513dc0ed68ff3e3374
Florin Coras [Mon, 17 May 2021 23:05:41 +0000 (16:05 -0700)]
session: only handle old ctrl events per dispatch
Avoids dispatching ctrl events generated while handling the
current pending list.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ibeaf901ba4cf58a68fbd88e5ec3c23f6c2f6f145
Florin Coras [Tue, 18 May 2021 06:44:53 +0000 (23:44 -0700)]
session: move tx-buffers to tx ctx
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I10ec410fb7f3acb47128dda23510162dc13b20d0
Damjan Marion [Mon, 17 May 2021 16:36:54 +0000 (18:36 +0200)]
memif: remove unused code
Type: refactor
Change-Id: I127b8c7131fd993a5fe605c7c36cc1d0b6672984
Signed-off-by: Damjan Marion <damarion@cisco.com>
Andrew Yourtchenko [Mon, 17 May 2021 16:16:28 +0000 (16:16 +0000)]
build: fix the "show version" output in the centos release builds
A couple of releases ago I made a change that slightly changes
the naming of artifacts, in order to make the version sorting better.
However, that change broke the "show version" output of the VPP
in the RPM - that build copies the entire source tree into
a new location and builds there, supplying the version
information in .version file rather than using git describe.
Updating only the version script and not the .version file content
resulted in the VPP release builds within the RPM installs have
the "count of commits since tagging" being zero and the commit ID,
rather than having XX.YY-release format.
A couple of releases - 20.09 and 21.01, saw a more haphazard solution,
but it is proper to fix the content of the .version file so it
is all consistent.
This commit fixes the contents of this file made for the RPM build, so that
the versioning script does not see unexpected input, thus addressing
the issue of "show version" in the release build.
Change-Id: I0af68e69b1e40fc49ade759bb2f0ed9f47614217
Type: fix
Fixes:
1060332e62d1216bf33c697d0a54ba35d4903eb3
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Damjan Marion [Fri, 14 May 2021 23:38:18 +0000 (01:38 +0200)]
memif: remove duplicate code in tx
Type: refactor
Change-Id: Idb82e28ee2e370ae8fc1becc2f8b92a548bc6b1b
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 14 May 2021 15:22:03 +0000 (17:22 +0200)]
memif: optimize zero-copy rx ring refill
Type: improvement
Change-Id: I8169da230eb5f74651810a8e2490895620c38269
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Mon, 17 May 2021 14:49:07 +0000 (16:49 +0200)]
memif: fix "remove barriers" commit
Type: fix
Change-Id: I60bb0261c05bf7e25ca01c72780f1cd77fde7a9a
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 14 May 2021 12:36:23 +0000 (14:36 +0200)]
memif: remove barriers
Type: improvement
Change-Id: Idef30aee80b654ce424b6f1f1f730574ca68874c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Wed, 12 May 2021 12:51:29 +0000 (14:51 +0200)]
virtio: add the checks for descriptors chain len
Type: fix
virtio uses indirect descriptors for chain buffers.
indirect descriptor chain is mapped on a vlib_buffer_t.
Single descriptor is 16 bytes and vlib_buffer_t has
2048 bytes space. So maximum long chain can have
128 (=2048/16) indirect descriptors.
This patch adds check to make sure descriptors chain
len should not exceed 128.
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I060cfb7709568f42c9b5634527172690ce66a1a3
Florin Coras [Wed, 5 May 2021 16:54:00 +0000 (09:54 -0700)]
session: rpc for connects to main
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ifa47e1500e5cfb3c717f87b1d21131b9531c9005
Steven Luong [Fri, 14 May 2021 22:33:01 +0000 (15:33 -0700)]
lacp: coverity fix on null pointer dereference
Coverity complains on null pointer dereference. It is not likely to
happen.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Iab726a1e2d60725cec7ab0bbd2787b62e6393d33
Florin Coras [Sat, 15 May 2021 03:11:14 +0000 (20:11 -0700)]
session: fix coverity warning
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I24484a5192d7e683507ed640f75fb37914c0efb0
Florin Coras [Fri, 14 May 2021 16:22:20 +0000 (09:22 -0700)]
tcp: remove ho lock
Half-open sessions are allocated by main thread and cleaned up on main
with timers.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I37f000920a45908b62b5501ae9d54a88a9e4c609
Damjan Marion [Fri, 14 May 2021 13:00:05 +0000 (15:00 +0200)]
vlib: remove unused code
Type: refactor
Change-Id: Ia5f670541dd43a4f6d731dda84b2d898195643fc
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 14 May 2021 12:50:01 +0000 (14:50 +0200)]
vlib: pass node runtime to vlib_buffer_enqueue_to_thread()
Mechanical change for patch following this one...
Type: improvement
Change-Id: Iee12f3a8851f35569e6c039494a94fc36e83d20f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 14 May 2021 13:26:53 +0000 (15:26 +0200)]
avf: free spinlock on txq removal
Type: fix
Change-Id: I8e9a907a227f82b870a945b94731dc3204c23ee1
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohammed Hawari [Tue, 11 May 2021 15:28:44 +0000 (17:28 +0200)]
interface: fix converity in update_runtime_data
Change-Id: I59eb41516b5e052109428ae70660ed49126c25bb
Type: fix
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Damjan Marion [Fri, 14 May 2021 13:48:52 +0000 (15:48 +0200)]
interface: update tx queue runtime if vector size changes
Fixes issue which causes crash in case when VPP only runs with main thread.
Type: fix
Change-Id: Ia0ca973bb7e7ff81f15b37764ae248e2502bdcec
Signed-off-by: Damjan Marion <damarion@cisco.com>
liuyacan [Fri, 14 May 2021 02:11:03 +0000 (02:11 +0000)]
vcl: fix lookup listener assert
The following timing may happen:
1. vpp accept new connection, send ACCEPTED to vcl, but vcl has
not handle it
2. vcl unbind the listener, go into DISCONNECT state
3. vcl handle the ACCEPTED event
Type: fix
Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: If9a96a153af38763db062df133c2fdcc04ceba9b
Florin Coras [Thu, 13 May 2021 18:37:43 +0000 (11:37 -0700)]
session: switch ct to vc and track half-opens
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I7f9c4b9b6e523ab549087ad21724f34f08fca793
Florin Coras [Thu, 13 May 2021 15:36:56 +0000 (08:36 -0700)]
tls: switch dtls to vc and track half-opens
Also adds support for half-open support transport migration.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Id04c194138956336f93246bbed0332a7030c67e2
Steven Luong [Wed, 12 May 2021 21:38:22 +0000 (14:38 -0700)]
lacp: Prohibiting bonding with remote having different key than 1st member
After forming the bonding with 1st remote member, Subsequent member must
have the same key in order to join the same bonding group.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I9ff6d6c083a5b6a26beedbd7181d5a120cb5710b
Damjan Marion [Thu, 13 May 2021 12:19:33 +0000 (14:19 +0200)]
interface: fix tx queue runtime update
Type: fix
Change-Id: I5ce7e57ae277de26af602fe786048bf21b8612f8
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Wallace [Thu, 13 May 2021 01:43:59 +0000 (21:43 -0400)]
tests: move test source to vpp/test
- Generate copyright year and version
instead of using hard-coded data
Type: refactor
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I6058f5025323b3aa483f5df4a2c4371e27b5914e
Nathan Skrzypczak [Wed, 12 May 2021 16:47:12 +0000 (18:47 +0200)]
quic: remove cmake --target
Type: fix
This isnt needed as we pass
CMAKE_SKIP_INSTALL_ALL_DEPENDENCY
Change-Id: I1406d84192efb9baedf7df680aca0b96bb0eef01
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Damjan Marion [Wed, 12 May 2021 09:51:08 +0000 (11:51 +0200)]
misc: change VFIO group ownership and permissions in vfctl script
This is missing step to allow runing VPP unpriviledged
with AVF driver.
Type: improvement
Change-Id: I37dfad9236691c1a8e2837a5811536170c65d7bc
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 12 May 2021 12:43:21 +0000 (14:43 +0200)]
avf: avoid eating our own tail
This happens in case we are not able to refill ring with new buffers.
Type: fix
Change-Id: I727e55c5b8482d9b8aeb4a9933a9a755fe21e55f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Chenmin Sun [Mon, 10 May 2021 12:11:49 +0000 (20:11 +0800)]
flow: fix vxlan vni convert bug
This patch fixes a vxlan vni field conversion bug in flow api layer
Type: fix
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I37b2ffb54792f48b390ff42da577db2c4869d253
Florin Coras [Tue, 11 May 2021 04:12:27 +0000 (21:12 -0700)]
tls: switch to vc service and track half-open sessions
Half-open tls sessions are now tracked by the app worker and are cleaned
up only when tcp cleans up its half-open session, i.e., independent of
when the established tls context is allocated.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If5d594d7095192dd527daf4ea1358ffeccdfcc7a
Florin Coras [Tue, 11 May 2021 18:55:07 +0000 (11:55 -0700)]
session: return connect session handle to app
App transports not supported for now. Will have to be updated
individually.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I75cb6c4e1c5af008af72858a9ee573016812abd4
Fan Zhang [Tue, 11 May 2021 11:53:15 +0000 (12:53 +0100)]
crypto: add chacha20-poly1305 support to ipsecmb
Type: feature
This patch adds chacha20-poly1305 single and chained algorithm
support to ipsecmb crypto engine.
Signed-off-by: DariuszX Kazimierski <dariuszx.kazimierski@intel.com>
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: If04ee0c8f985b07fd31dad1ce29000ec6f1733c5
liuyacan [Sun, 9 May 2021 03:50:40 +0000 (03:50 +0000)]
session: support half-close connection
Some app(e.g. Envoy) may call shutdown() instead of close() when
draining connection.
Type: improvement
Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: I9543b9ca3caa87b10b134fd1fc4019124e41e4d2
Aloys Augustin [Tue, 13 Apr 2021 19:14:55 +0000 (21:14 +0200)]
ip: ensure ttl doesn't decrease to 0 when punting
Change-Id: I248ef12fd34ea2a1c383fbcc530a8ffeb31ba92b
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Damjan Marion [Thu, 15 Apr 2021 11:12:51 +0000 (13:12 +0200)]
interface: tx queue infra
Type: improvement
Change-Id: I415b2f980de10ca3154d2c8677c24792453eccd0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Mon, 10 May 2021 12:51:44 +0000 (14:51 +0200)]
build: compiler flags handling cleanup
Type: make
Change-Id: I51f30edb91e09525ba116fe3941f2e43f9718da7
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Tue, 11 May 2021 00:21:06 +0000 (17:21 -0700)]
quic: alloc ctx on udp thread
UDP sessions are allocated on first worker because main does not poll.
Consequently, quic should also allocate connection on first, to avoid
multiple migration events.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ice229a42c399e87150e0f6dd76e2e06ab271556c
Nathan Skrzypczak [Fri, 7 May 2021 17:39:51 +0000 (19:39 +0200)]
vppinfra: Add missing %o
This is used in vppinfra/socket.c:495
Type: feature
Change-Id: I89b409ae7abb01723108ae3e6c55bb1675db50ee
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Dave Barach [Mon, 10 May 2021 23:01:42 +0000 (19:01 -0400)]
vlib: exec cmd handle scripts with blank lines
Type: fix
Fixes:
2f96e7648b9b7d501088eddff7e4a761973e71f4
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ia75c863850c0df978f61bfc0343a167d8636ed97
hemant_mnkcg [Tue, 27 Apr 2021 22:02:13 +0000 (18:02 -0400)]
misc: fix crash in lawful intercept CLI
Type: fix
Signed-off-by: hemant_mnkcg <hemant@mnkcg.com>
Change-Id: I097815617053dac09de7ad3092b3d3071770114f
Florin Coras [Sat, 8 May 2021 02:39:43 +0000 (19:39 -0700)]
session: use half-open sessions for vc establishment
Use half-open sessions to track virtual circuit connection
establishment. These sesssions can only be allocated and freed by the
thread that allocates half-open connections (main). Consequently, they
can only be freed on half-open cleanup notifications from transports.
Goal is to simplify state tracking within the session layer but it's
also a first step towards allowing builtin apps to track and cleanup
outstanding connects.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I8a535906d13eb7f8966deb82333839de80f8049f
Benoît Ganne [Mon, 10 May 2021 12:10:19 +0000 (14:10 +0200)]
dpdk: do not crash when failing to bring interface up
If dpdk device starts failed for some reason, we should not try to get
stats and the interface must remain down.
Type: fix
Change-Id: I0079f89d3b43a9b47553991347da8ed4ce6ede8d
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Mon, 10 May 2021 12:07:49 +0000 (14:07 +0200)]
rdma: bump to rdma-core v35.0
Type: improvement
Change-Id: I5f7ff309aacbfd7a5a8a973bcc7ba04ba44923c5
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Sat, 8 May 2021 22:29:50 +0000 (15:29 -0700)]
svm: try chunk alloc only if enough space available
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I3c52dd783601d50e981f75bd05a7b95c03bb5c22
Mohsin Kazmi [Wed, 5 May 2021 16:25:39 +0000 (16:25 +0000)]
gso: fix the gro coalesced chain len
Type: fix
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I86b940384a6898d4cb04f3decf30996c94b43d07
wanghanlin [Sat, 8 May 2021 03:39:53 +0000 (11:39 +0800)]
api: fix crash in vl_msg_api_free
VPP crash when ASSERT in clib_mem_free.
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: Id06d833caab3385446528d62a6ed3bde38d57db0
Steven Luong [Thu, 6 May 2021 17:00:30 +0000 (10:00 -0700)]
vhost: low performance in interrupt mode in some cases
When vhost and another interface, say tap, are configured for interrupt
mode, performance number may be very low from vhost.
Further analysis discovers that when vhost posts an interrupt to the
RX infra, there is a 10 msec delay in waking up its input routine.
The delay is due to vhost posts the interrupt from the main thread
which tries to wake up the worker thread.
The fix is for vhost to move the posting interrupt call to the
corresponding input worker thread by calling
vnet_hw_if_set_rx_queue_file_index() to set it up.
While at it, streamline the function vhost_user_kickfd_read_ready()
since it will be called from the worker thread.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I9beedcd33e1558c8335da4ee7fadc51c29ee4589
Nathan Skrzypczak [Fri, 7 May 2021 16:16:58 +0000 (18:16 +0200)]
memif: Fix delete on error
Type: fix
Change-Id: I3cc09630cae999cc194a0eedb4d2cfee7a826b76
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Mohammed Hawari [Fri, 7 May 2021 15:27:51 +0000 (17:27 +0200)]
avf: fix coverity
Change-Id: I54025eb0e4ee861b2b2fed554b006405cba38bb9
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: fix
Fixes:
bd376a8ce8425f45b23074398949e8055de29280
Dave Wallace [Sat, 8 May 2021 01:40:54 +0000 (21:40 -0400)]
tests: fix another race condition in punt tests
- Don't close the socket and don't stop receiving
until after draining the existing data in the
socket.
Type: fix
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I38dfff4d6273eeddb5196f5cf2a60b580e1c93e6
Fan Zhang [Fri, 7 May 2021 11:50:18 +0000 (12:50 +0100)]
dpdk: fix cryptodev session handler
Type: fix
This patch fixes the possible segmentation fault in DPDK
cryptodev when deleting session.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: Ie81de09f7250eb5c1ed6ee471363137d8372fe27
Damjan Marion [Fri, 7 May 2021 07:20:54 +0000 (09:20 +0200)]
build: bump ipsecmb version to 1.0
Type: improvement
Change-Id: If2c0db46805c0a8c995a76938f049568f57f7560
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Thu, 6 May 2021 22:32:14 +0000 (15:32 -0700)]
session: connects seg manager is always first
By convention, connects segment manager will be first. Therefore it will
be the one with the first segment wherein lies the app's message queue.
Saves us the trouble of allocating it on first connect, if app started
by listening, and we no longer need to track if it's assignable to a
listener or if it can be removed.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iba9a8ffaab618eeb41ec2144dcfee62d006dc7a2
Nathan Skrzypczak [Tue, 4 May 2021 13:46:33 +0000 (15:46 +0200)]
avf: Fix cksum offload / ipsec
VNET_BUFFER_F_OFFLOAD means 'check 2nd cacheline'
but we can still have TCP_CKSUM=0 & UDP_CKSUM=0
Type: fix
Change-Id: I42b5974f6d34b777aa959c06c67619a5c83c5805
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Damjan Marion [Thu, 6 May 2021 15:34:49 +0000 (17:34 +0200)]
vppinfra: add universal array mask_compare and compress funcs
Type: improvement
Change-Id: I6d812339f626ea630ad9354632d2f9506122d379
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Thu, 6 May 2021 19:46:04 +0000 (12:46 -0700)]
vcl: add dtls test
Type: test
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I726ab3a22399e970b0dd37a5b174062137265914
Damjan Marion [Thu, 6 May 2021 18:48:34 +0000 (20:48 +0200)]
build: add FORCE_ON option for multiarch variants
Type: make
Change-Id: I37fb925a9cc2dfc21dd7874f4b20a6943b28efc8
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Wallace [Thu, 6 May 2021 19:59:59 +0000 (15:59 -0400)]
tests: fix race condition in punt tests
Type: fix
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I6cb13e044bbb966cbb61802094e96220d3a0c951
Damjan Marion [Tue, 4 May 2021 07:37:56 +0000 (09:37 +0200)]
build: fix ./configure help
Type: make
Change-Id: I2479f1f84d32bf3e7266625a01174c1706bea7be
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Thu, 6 May 2021 19:24:40 +0000 (12:24 -0700)]
vcl: move tests to src/tests
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If622dfcc6f98d90cac0487e6bb9eb8c0bb01cf85
Ole Troan [Thu, 6 May 2021 09:02:37 +0000 (11:02 +0200)]
stats: move vector_rate counters into provider
Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Iae1fb59a6dc9679c0fa0b87fa5232d551a7995a5
Ole Troan [Thu, 6 May 2021 14:15:35 +0000 (16:15 +0200)]
vlib: remove unused simple counters fields
Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I46cfdcd02e5fda310367da17532cd2f355044811
Signed-off-by: Ole Troan <ot@cisco.com>
Florin Coras [Thu, 6 May 2021 07:08:18 +0000 (00:08 -0700)]
vcl: reduce iperf tests output
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia6197e99ebc42367624da27387216dc4cdb3141b
Florin Coras [Thu, 6 May 2021 03:48:02 +0000 (20:48 -0700)]
vppinfra: export unserialize_elog_main for g2
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ifb322a7eb7ca14c3561ea34e40b80e3d1ce1b6a5
Damjan Marion [Thu, 6 May 2021 15:28:12 +0000 (17:28 +0200)]
vppinfra: fix tests
Type: fix
Change-Id: If59a66aae658dd35dbcb4987ab00c306b3c6e2e2
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ole Troan [Thu, 6 May 2021 12:09:50 +0000 (14:09 +0200)]
vlib: rename vl_counter_t to vlib_error_desc_t
Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I368b0410db2d633d3c52199c840e24d21952c1b4
Ole Troan [Wed, 5 May 2021 07:23:17 +0000 (09:23 +0200)]
stats: memory heap counters
- Add counters for the main-heap
- Add additional counters per heap:
STAT_MEM_TOTAL
STAT_MEM_USED,
STAT_MEM_FREE,
STAT_MEM_USED_MMAP,
STAT_MEM_TOTAL_ALLOC,
STAT_MEM_FREE_CHUNKS,
STAT_MEM_RELEASABLE,
The per-heap counters are organised as a two dimensional vector.
total, used and free are directly available via symlinks.
vpp_get_stats ls "^/mem/"
/mem/stat segment
/mem/stat segment/total
/mem/stat segment/used
/mem/stat segment/free
/mem/main heap
/mem/main heap/total
/mem/main heap/used
/mem/main heap/free
vpp_get_stats dump "^/mem/main\ heap$"
[0 @ 0]:
1073741776 packets /mem/main heap
[1 @ 0]:
91586688 packets /mem/main heap
[2 @ 0]:
982155088 packets /mem/main heap
[3 @ 0]: 0 packets /mem/main heap
[4 @ 0]:
1073741776 packets /mem/main heap
[5 @ 0]: 433 packets /mem/main heap
[6 @ 0]:
981708688 packets /mem/main heap
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I36725dde3b4b3befd27a8b4d3ba931f2d3b627cc