11347 Commits

Author SHA1 Message Date
Nathan Skrzypczak
ae5609721b docs: consume fd.io version list
Type: feature

This adds a version snippet in the
vpp docs, based on a json description
fetched from fd.io/vpp_versions.json

This relies on https://github.com/FDio/site/pull/108
being merged

Change-Id: I6dd22f09927841aef96011ed57af2cbdc5d409f5
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-11-16 18:04:55 +00:00
Klement Sekera
cbc81eae6e perfmon: fix coverity warning
Check for possible hash lookup failure to avoid NULL dereference.

Type: fix
Fixes: e15c999c30
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Ib806b4d124be26fbccf36fe9d19af1aec63f487b
2021-11-16 16:19:40 +00:00
Dave Wallace
fc283bc040 build: Remove ubuntu-18.04 install dependencies
- Per agreement at VPP community meeting, end support for
  ubuntu-18.04

Type: make

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I20ae1531e571ba0aad233d47c2e5b73ee3f964b6
2021-11-16 15:50:09 +00:00
Florin Coras
7fe006965e session: add per worker ct context
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie20dc1e369735965bd780f04cd8703c099065fcc
2021-11-16 15:35:41 +00:00
Klement Sekera
a25ce96ba3 vapi: verify message size when received
Verifying message size including VLA size allows to dismiss some
coverity warnings in generated code.

Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I824658881254b3e7a9bfca228a266cfee448cc2e
2021-11-16 10:30:50 +00:00
Nathan Skrzypczak
5f07b6bd54 docs: add jira link
Type: improvement

Change-Id: I9c53ff39e6d064437b5a2fdc29ecc2301b5cbd16
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-11-15 19:33:57 +00:00
Florin Coras
9895238e24 session: postpone ct segment delete
Only delete segments only after both server and client detach.

Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Idea6b2141f406aad1f19a5312ecea89d35f2b5de
2021-11-15 18:18:48 +00:00
Filip Tehlar
2f09bfc8be vcl: add DSCP support in VCL
Type: feature

Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I835675267c997b5dc92a0aaccdb58648bc786bb9
2021-11-15 17:42:30 +00:00
Andrew Yourtchenko
31f1924346 misc: vppctl - remove the dependency on vppinfra
56f54af21d18f9fdd471b81db77a3942b0aa4d9c introduced the new memcpy.
It also made a vector support mandatory in order to compile anything
that depends on vppinfra.

This broke extras/scripts/build_static_vppctl.sh

Since the vppctl is just a two-pronged epoll+basic telnet client handler,
remove dependencies on the vpp infra libs, and trim the build script accordingly.

Change-Id: I394bc65c485cbf8e7143a818ca0c86367bb15d90
Type: improvement
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2021-11-15 14:34:56 +00:00
Dmitry Valter
923325f0ef vppinfra: fix masks in AVX512 clib_count_equal_*
Mask result of uAxB_is_equal_mask when buffer is masked. Otherwise it
return vector length B as a result for zeroed words.
This bug caused crashes in error_drop in tests on Ice Lake.

Type: fix
Fixes: 7459be1b3626b608e60df574343a1432a068ebce
Change-Id: I56183e77f8a8ab6c530e79b465067958de84dceb
Signed-off-by: Dmitry Valter <d-valter@yandex-team.ru>
2021-11-15 12:57:26 +00:00
Mohsin Kazmi
23ff4ce21e memif: fix the coverity warning
Type: fix

Fixes: 2bae16b238bd ("memif: fix the default txq placement")

Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I8fbb2aa92dc31d84a5cd0f7b9a3c7f39dfb064ee
2021-11-15 12:41:50 +00:00
Ray Kinsella
e75084025a perfmon: rename bundle to memory stalls
Rename the memory bandwidth bundle to memory stalls, to differentiate it
from the bundle that measures memory controller bandwidth boundedness.

Type: refactor

Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I828c73b6f769046e1ab592712bdf81ceefcd7911
2021-11-15 12:41:14 +00:00
Neale Ranns
50bd1d3e25 fib: re-evaluate the import/export state of a prefix.
Type: fix

re-evaluate the import/export state of a prefix when the interface it is attached to rebinds to a different table.
Only attached routes have import/export requirements, so we can back walk from the glean adjacency when the interface rebinds tables.
There are two cases to consider.
 1. the rebind may change the prefix from/to import
 2. the import VRF may change

Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I25b6af43b3b2d8f701dfbe7a08710dc56b3f5778
2021-11-15 08:42:26 +00:00
Daniel Béreš
8d76ccf9cc flowprobe: right values in records from subinterfaces
Skip 802.1q headers due to correct EtherType, ip addresses, ports.

Ticket: VPP-1997
Type: fix
Change-Id: I1a552fa6abe5b1459dd7d2c5ac6ad0f62c51417c
Signed-off-by: Daniel Béreš <daniel.beres@pantheon.tech>
2021-11-14 09:27:00 +00:00
Filip Tehlar
3ef8bf3660 session: add support for DSCP
Type: feature

Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I817b1503ada1ae53c1134a85263f9b801d74e88a
2021-11-12 20:41:09 +00:00
Damjan Marion
271daab967 hash: refactor crc32_5tuple
Type: improvement
Change-Id: I31cae2367e2ec7fc89991ca0df994a73da93aaed
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-12 16:13:08 +00:00
Damjan Marion
3108399fcf srtp: fix uninitialized value
Type: fix
Fixes: 6621abf
Change-Id: I7cd4d6344613c950cc0018bed7306b8840292221
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-12 15:49:53 +00:00
Damjan Marion
bea6993274 build: remove unnecesary link deps
Change-Id: I560c505ff754bf6856094c16494530a855fe287b
Type: make
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-12 14:21:09 +00:00
Florin Coras
feb6702805 session: fix ct tracking of actual transport proto
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If6a0b0ba9efc95180bdd2e26a1422663ab957ea0
2021-11-12 12:38:25 +00:00
Mohsin Kazmi
049a2ea95f virtio: improve the inline of clib_memcpy_fast
Type: refactor

Change-Id: Ia13a9cf6480aac280f3d287c59908e84c29c3443
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2021-11-12 12:37:20 +00:00
Mohsin Kazmi
2bae16b238 memif: fix the default txq placement
Type: fix

Fixes: 3effb4e63068 ("memif: integrate with new tx infra")

"memif: integrate with new tx infra" patch integrated memif
with new tx infra. There might be scenarios when txqs were
less than vpp threads, in which case, txqs should be shared
among threads. This patch fixes it.

Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I1c64a1370f5024240ab56311f75665db31714b60
2021-11-12 12:33:46 +00:00
Ole Troan
9432340362 tests: make code coverage for unit tests optional
Add a new cmake option VPP_BUILD_TESTS_WITH_COVERAGE to enable
building unittests with clang code coverage.

Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I9cbe9e3031afdcd03bc8f9203d662b91677724ab
Signed-off-by: Ole Troan <ot@cisco.com>
2021-11-11 19:33:37 +01:00
Florin Coras
ef2c0f177d vcl: notify vpp if connected inexistent session
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I6939a0cdb02067440dce01cb0771f07099ca841e
2021-11-11 15:59:12 +00:00
Filip Varga
730c1a4097 nat: nat44-ei/ed nat objects cleanup improvements
Improvements:
* Changed plugin disable call behavior from freeing data types
to calling appropriate nat plugin object delete calls for
pool addresses, mappings and interfaces.
* Added wrapper nat44_ei/ed_add_del_static_mapping function to
handle switch bound static mappings. This would also fix ip assignment
callback add/del bound static mapping issue preventing creation of the
mapping.

Fixes:
 * Fixed lingering object issue: some nat intertwined objects would
not free each other if not correctly deleted in proper order.
 * Fixed incorect order of FIB unlocks for pool addresses causing
syslog messages to use deleted FIBs in multiple VRF configuration.
 * Fixed incorrect value testing of flags instead of vrf_id for
multiple vrf configuration static mapping.

Type: improvement

Change-Id: I2743f7b1104b627bcc5ef937e3a50655313a26ea
Signed-off-by: Filip Varga <fivarga@cisco.com>
2021-11-11 12:40:30 +00:00
Damjan Marion
aa63bc6cf4 vppinfra: new vectorized ip checksum functions incl. csum_and_copy
Type: improvement
Change-Id: Id5810b7f4a6d6e4ce16b73c235b50db5d475ebf7
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-10 23:22:58 +00:00
Dave Barach
29355644c5 vppinfra: deprecate test_mheap.c
The original mheap allocator found the exit a long time ago,
move test_mheap.c to .../extras/deprecated/vppinfra

Type: test

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ib1ed40ac605ad76f33c22a681a6df867985bbbba
2021-11-10 16:41:06 -05:00
Steven Luong
4d769c71a1 ip: crash in ip_csum_fold due to illegal instruction shrx
Encounter a crash for the line
	shrx   edi,eax,edi
in ip_csum_fold. The target cpu is ivy bridge which does not support
shrx instruction.

Type: fix
Fixes: e6709ff37dc0f3a58ed5ad98aace73fe801f1e9d

Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Icc922d3b2ebfcfa721f63946a213b6c492874a9a
2021-11-10 09:02:24 -08:00
Damjan Marion
56f54af21d vppinfra: new memcpy for x86_64
Change-Id: I5a5055580479960ac53e3f989aa188faf57fb05d
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-10 16:45:23 +00:00
Florin Coras
904638f462 ip: always set ip rx_sw_if_index
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I43f6bfa028ee37227f27a2fe0303662bf2631b10
2021-11-10 15:33:02 +00:00
Filip Varga
9c25eb1f48 nat: api autoendian fix
Fixed bad use of macros for autoendian API calls
and updated tests for the new API. Removed sw_if_index
check macro because of ntol conversion. Changed
REPLY_MACRO to REPLY_MACRO_END to fix ntohl conversions.

Type: fix

Change-Id: I878a07b3f80fe03179feab60f0abc662f408a2c8
Signed-off-by: Filip Varga <fivarga@cisco.com>
2021-11-10 10:48:19 +00:00
arikachen
603231f447 af_xdp: fix thread 0 and 1 using one txq slot
Type: fix

Signed-off-by: arikachen <eaglesora@gmail.com>
Change-Id: Id0e98e0a1b04f2c1aba2c261b4e51fd53a4ee824
2021-11-10 07:40:48 +00:00
Damjan Marion
f9e3cd4e5a misc: update extras/scripts/lsnet
Type: improvement
Change-Id: Iea45fa535ca562a1d424fd3d46b557a7d4775505
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-10 00:44:26 +01:00
Dave Wallace
fb1135da99 build: install clang-format-11
- Don't make it the default yet

Type: make

Change-Id: I3aabfd32f7ffd99e10db372747a0ba65fdc76db2
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2021-11-09 23:29:58 +00:00
Florin Coras
e7dda6b034 session: reset if ct close with data
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I9540948b8b5476af7558d741cbf15ee838d4e01b
2021-11-09 19:09:22 +00:00
Florin Coras
440c7b5570 session: postpone ct cleanups
Add infra to postpone cleanups while tx events are not delivered.

Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I7611ac2442116f71a229569a7e274eb58eb84546
2021-11-09 18:33:28 +00:00
Neale Ranns
a360e6fc11 tests: Remove the error output from the linux-cp tests
Type: test

Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ib9899327897f36219c113fedb25366cd1be463a0
2021-11-09 17:29:32 +00:00
Damjan Marion
0f814f5bd5 build: missing clang in deps for ubuntu 20.04
Type: make
Change-Id: Ica706f0284873f6bd8b8d868c965812a139748cf
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-09 16:17:23 +01:00
Dave Wallace
995123ec20 tests: fix missing dataclasses module in python 3.6
Type: fix
Fixes: b8165b96f

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: Ic82a0404073a26e3d160b01c9038cde11eedf3ec
2021-11-09 11:17:36 +00:00
Daniel Béreš
90c397c505 memif: memif linkstate can't become up
Admin down implies Link down but nothing came with admin up.

Ticket: VPP-1959
Type: fix
Change-Id: I43725329ae7918659c73d703280c25de5f0b1d14
Signed-off-by: Daniel Béreš <daniel.beres@pantheon.tech>
2021-11-09 09:54:34 +00:00
Florin Coras
f7b1f8a891 tcp: refactor reset node
Use vectorized buffer translate function and refactor tracing.

Type: refactor

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I5a014cea1a753eb10a564ac316c1727a18f884ff
2021-11-08 16:41:03 -08:00
Damjan Marion
4c53ff4595 vppinfra: vectorized index to pointer function
Type: improvement
Change-Id: I05e1a8fa31761b113355123429d72da18881d4b0
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-08 21:49:51 +01:00
Damjan Marion
66b057e563 vppinfra: clib_count_equal_* tests
Type: improvement
Change-Id: I8f75cd9ce78ce686985e65c75dcddf498cef7621
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-08 20:44:03 +00:00
Damjan Marion
7459be1b36 vppinfra: AVX512 in clib_count_equal_*
Type: improvement
Change-Id: I8105d396cfc984e00cf5137bc57122510f5e6437
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-08 20:44:03 +00:00
Damjan Marion
1e26724dce build: -Wno-stringop-overflow during LTO phase
Type: make
Change-Id: I735fa411366c41981e255921eceb18ebbb4b5fe1
Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-11-08 16:39:06 +00:00
Ray Kinsella
81865bc0e3 perfmon: fix iio-bw coverity issues
Fixes an number of coverity issues associated with the iio-bw feature.

Type: fix
Fixes: e15c999c3

Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I9ad2b336694132545d90a3483200a510226e9198
2021-11-08 09:33:25 +00:00
Tianyu Li
ad1bc84e6e l2: fix array-bounds error for prefetch on Arm
make build-release CC=gcc-10

vpp/src/vppinfra/cache.h:73:31: error: array subscript 80 is outside
array bounds of ‘l2_in_out_feat_arc_main_t[1]’ [-Werror=array-bounds]
__builtin_prefetch (_addr + (n) *CLIB_CACHE_PREFETCH_BYTES,
_CLIB_PREFETCH (3, size, type);
vpp/src/vnet/l2/l2_in_out_feat_arc.c:260:3:
note: in expansion of macro ‘CLIB_PREFETCH’
CLIB_PREFETCH (next_node_indices, 2 * CLIB_CACHE_LINE_BYTES, LOAD);

2 * CLIB_CACHE_LINE_BYTES is 256 bytes on Arm, the offset is out of range of
fam->feat_next_node_index[1], which is 128 bytes, use sizeof array instead.

Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: Ib7e06fcb643b2e863985ba89efcc274076752133
2021-11-07 04:25:14 +00:00
Gabriel Oginski
e6189d8d0b crypto-native: fix uninitialized variable
Type: fix

Fixed coverity-issue CID 208547.
Originally using uninitialized value when calling one function.
This patch fixes the problem by initializing value for one variable.

Signed-off-by: Gabriel Oginski <gabrielx.oginski@intel.com>
Change-Id: Iccfae1e825b4ca4d95a6f724d9b5c51c5addd1b2
2021-11-07 04:23:28 +00:00
Xiaoming Jiang
e58c5c5bb4 perfmon: numa node list probing should use '/online' instead of '/has_cpu'
Type: fix
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
Change-Id: I85e41d58884af71afba960d20604bb1b01876d26
2021-11-07 04:01:17 +00:00
Florin Coras
957d85058f tcp: fix reset with packet ack number
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I35c1fc75df065398821cc275e853a3caa9db94c2
2021-11-06 18:19:53 +00:00
Dave Wallace
51a037daf2 tests docs: fix jsonschema dependency
- docs requires jsonschema which is only supported
  on python 3.7 or newer.  This causes 'make test'
  to fail on Ubuntu 18.04

Type: fix
Fixes: 9ad39c026

Change-Id: I0935c569ac102ea1dba6112f458e6ee10330e474
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2021-11-06 17:33:14 +00:00