9850 Commits

Author SHA1 Message Date
3227e49689 docs: Fix CentOS 8 build
Type: fix

Signed-off-by: Jon Loeliger <jdl@netgate.com>
Change-Id: I2d0d29af9186c50735d9a3b41148549f5cde614e
2020-12-07 19:02:31 +00:00
fe909a6288 dpdk: support mlx drivers linked with rdma-core
Change-Id: I8b8e4420f7643df95c27f4a4764809e8ddd2d12e
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: improvement
2020-12-07 14:08:22 +00:00
e061dad55e tests: py2 cleanup - remove subclassing of object
Type: refactor

Change-Id: I9096e3b473110350e1e8e5936e3c4c164f8969a7
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-07 08:17:10 +00:00
d6f221789d tests: remove the dependency on subprocess32
Type: test

Change-Id: I39afe56a085648d881a18c7eafcf7caf2f375f31
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-06 20:45:34 +00:00
d9ed3f2d8a wireguard: run feature after gso
This allows using GSO with wireguard

Type: fix

Change-Id: Id00a1425f9d9412aca9f259beda55a46bf5595d7
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2020-12-06 20:04:15 +00:00
ecf98c095c vlib: vlib_log for "linux device up" warnings
Make it easy to figure out why vpp didn't bind a particular hardware
interface in the most common case: the Linux interface is up.

Type: improvement

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I99534dd91e0030601c09171a9fbc9ad45af6bf08
2020-12-06 20:02:41 +00:00
1135f65586 tests: refactor ForeignAddressFactory
Move ForeignAddressFactory back to test_lisp.
It is the only test that uses the code and has
embedded addresses specific to the test.

Type: test

Change-Id: If1a39f9b167e36dd7aff7481350ddb8fe17155d2
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-06 18:54:07 +00:00
24841867d1 virtio: fix the interrupt handling for packed queues
Type: fix

Change-Id: I2cc1cfd519e5b3502c59cf72e95e454f9122b8e5
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2020-12-04 22:54:34 +00:00
8ed06c0dd3 crypto: fixed vnet_crypto_async_reset_frame assert
Type: fix

Changed vnet_crypto_async_reset_frame assert to expect also
ERROR state frames.

Signed-off-by: PiotrX Kleski <piotrx.kleski@intel.com>
Change-Id: I3abc29f3f9642027aee38a59a932e54c90da859d
2020-12-04 22:52:54 +00:00
ef69b51034 crypto: fixed async frame enqueue race condition
Type: fix

To avoid race condition happening in async crypto engines,
async frame state and thread index set should happen before enqueue.
In addition as the enqueue handler already returns the enqueue status,
when an enqueue is failed, the async crypto engine shall not worry
about setting the async frame state but let the submit_open_frame function
to do just that.

Signed-off-by: PiotrX Kleski <piotrx.kleski@intel.com>
Reviewed-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: Ic1b0c94478b3cfd5fab98657218bbd70c46a220a
2020-12-04 22:52:16 +00:00
270f5235c0 acl: fix acl-plugin testcases packet counting
Counter checks in ACL tests were incorrect if VPP is running with multiple workers

Change-Id: Id095d55c6cd3bfee8aaac6d177984e569e87d29b
Type: fix
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2020-12-04 22:50:41 +00:00
6223766f96 libmemif: clean up typos
Type: style

Change-Id: I0d25d922312dfd60a665916cf47c3d2faa29ea49
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-04 22:48:07 +00:00
2b29c9494e avf: fix coverity issue
Change-Id: I1b589c924326a98c4cabe5496ce72b20673b5153
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: fix
2020-12-04 22:47:08 +00:00
7a105fdad6 udp session: fix deq notification for dgrams
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1440c11fb9d962a05d877aebb4de364c86f9953e
2020-12-04 18:30:56 +00:00
a17381a41d virtio: fix the len offset
Type: fix

Change-Id: I8ce1df5c97941fb645b33476db9cfc74f1395b15
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2020-12-04 16:57:08 +00:00
01e94db84f ip: fixup memory leak in function ip4_full_reass_drop_all
Type: fix

The vector 'to_free' allocated on heap should be freed to avoid memory leak.

Signed-off-by: barryxie <barryxie@tencent.com>
Change-Id: I539498b50a7f3e346c83b869fb400868961c233f
2020-12-04 14:36:34 +00:00
3825d93afe papi: add support for enumflag part 1 of 2
Allow for papi to accept the new enumflag type.

Change-Id: I8d8dc8fdb122e9a1b1881f5b2558635c75e4a299
Type: feature
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
(cherry picked from commit 299abebe2942b4c78b85f9f3b8843f8213bf1efe)
2020-12-04 12:14:34 +00:00
a51f9b3747 vppapigen: add parser support for enumflags
Type: improvement

Change-Id: I0f15862cc8399a4f7c8a81fe44ba8b27d8772278
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Signed-off-by: Ole Troan <ot@cisco.com>
(cherry picked from commit e15523297bb3905f2e0eef4272fc69a8a92463cc)
2020-12-04 09:40:27 +00:00
86ffb6b232 stats: fix coverity issues
Usage of the possibly negative value with subsequent check on it
makes coverity very unhappy, so put the check before use.

Change-Id: I731fbe6246f9e4212d546fd9277bc1ddcd3c2ec1
Type: fix
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2020-12-04 08:41:38 +00:00
068ad25c1a lisp: .api dont set defaults in reply messages
Type: fix

Change-Id: I39afa6ee048dd293c5e17120fa661052eb3477d1
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-03 22:49:03 -05:00
e6293ad19b tls: allow picotls to use secp elliptic curves
Fix typos in macros for elliptic curves over prime field.

Type: fix
Fixes: f83194c2f4

Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Change-Id: I657a7feaf1d1fdf3f2ca74fb3787977c65891a20
2020-12-04 01:46:29 +00:00
b18b190cb2 virtio: fix the offloads in tx path
Type: fix

Change-Id: I1f1f0b6e8c5ef8bc9f2aca4bdc78e89fa951b841
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2020-12-03 22:57:41 +00:00
c05e2852f6 nat: fix forwarding handoff workaround
A special case when out2in packet needs to
be handoffed to other worker thread. We are
not able to determine which thread they belong
to in the first processing of nat handoff node.
These packets needs to go through out2in slowpath
before we are able to tell where to handoff them.

Type: fix
Ticket: VPP-1941

Change-Id: I7173bda970ce6a91d81f48fc72aa2457586a076f
Signed-off-by: Filip Varga <fivarga@cisco.com>
2020-12-03 22:55:02 +00:00
090096bff3 tests: remove py2/py3 six compatability library
Type: test

Change-Id: Idb6b8169845e0239e639429ccfd02a683212b7e6
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-03 19:43:23 +00:00
4a856f9593 tls: fix passed argument in openssl plugin
Thread index used in qat_init_thread() is passed via a pointer
to a variable located on a stack that does not exist
when qat_init_thread is actually executed.

Type: fix
Fixes: f4a92f6a1c

Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Change-Id: I65dd4e604b78fcb1cf0452d707f47f9785e6371d
2020-12-03 18:07:46 +00:00
1d56ac423c svm: fix mutex consistency on trylock
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1370943935b460a1a1a22847fed2c97b1272a5e1
2020-12-03 16:05:27 +00:00
d7adc293d3 papi: remove python2 patterns
Type: refactor

Change-Id: I541759b4b788acf08599661eb9e7abc58e9283d2
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-03 14:12:09 +00:00
5395c6a079 papi: allow client control over loggers
This change enables a client to set debug levels
globally as well as individually.

exposes loggers as
  vpp_papi
  vpp_papi.serializer
  vpp_papi.transport

Type: improvement

Change-Id: Ib6bd1a1f552b51a22c9fe3de819a5fb970963ae5
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-03 14:00:05 +00:00
18a71d8af5 stats: char-pointer arithmetic style-up
Char* typed shared_header value appears multiple times,
so store it is a variable.
Pointer "p" value is used more frequently casted to char*,
so use that type for it, and convert to void* only at return.

Type: style
Fixes: 41f15ae1dfd4ac1777b684fdc763d12496209418

Change-Id: I7b3f1e6a43c020acd7ae561f87d12237b07fcd66
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-03 13:41:28 +00:00
d417fe2616 nat: fix incorrect session removal case
Add a condition where a TCP session in transitory timeout is kept
instead of being erroneously deleted.

Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Ic625c8c88cc8864293ebd57b0321505652af9380
2020-12-03 13:41:07 +00:00
12b1b5611d tests: fix typo in numbered list in documentation
Fix a typo in numbered list in the documentation. Also mention
possibility of using TEST= to run a specific test.

Type: fix

Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: I026703af014493afb3dea2d9ad99a7bb510b135d
2020-12-03 13:29:38 +01:00
27860dd068 tests: remove aenum library
the aenum library was used to provide intflag functionality
for python versions earlier than 3.6

Type: test

Change-Id: I914d390ee5364f337006c1c59abafe4b9a3c1bde
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-03 00:46:03 -05:00
45eff787cd tests: add type annotations to the vpp object abstract class
make it easier to detect logical mistakes.

Type: test

Change-Id: I853748ffaeebc545c8d31299f0d105405ad80bba
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-02 10:44:42 +00:00
4abc866392 nat: use correct per-thread vlib_main
Using vlib_main of another thread is prohibited.

Type: fix

Change-Id: I9a85a5fee5c6665d423b4306faf3b3f2c5e22f99
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2020-12-02 10:12:16 +00:00
46d6864b9d papi: improve unit testability
refactor the code so that snippets of json can be used to test vpp_papi
example unit test provided

Type: improvement

Change-Id: Ibec608fd2e5b12515aa4db17d85d4319134c22ea
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-02 10:11:38 +00:00
41f15ae1df stats: void-pointer arithmetic fix
Cast to (char *) to avoid pointer arithmetic for (void *) pointers.

Type: fix

Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: I62607b4cbc553449e2c60d514b4b17dbb4f88216
2020-12-02 10:08:53 +00:00
cebed411cc papi: fix copy/paste error
Type: fix

Change-Id: I8bd20fb38e132f6ab8cbc0e73095b649b5946498
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-02 10:07:45 +00:00
18107c974c ikev2: fix nat traversal
Type: fix

Change-Id: Ie723cf680745ec2292a15e2df05c1821436dba19
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2020-12-02 09:04:03 +00:00
a39f472a2c session: make pacer worker load aware
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I71b9d54311fcad808fcdaad0df2dca8c161d580e
2020-12-01 18:50:59 +00:00
7808df2e2f session: allow small pacer bursts
Instead of enforcing a "strict" release of data, which relies on
frequent rescheduling of sessions, allow some pacer coalescing, i.e.,
short bursts, that can minimize load on scheduler/session layer and
potentially leverage tso.

Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I67e38e5b8dc335bd214113b70c68c27ae92bd6da
2020-12-01 18:49:38 +00:00
de22111b52 wireguard: return public key in api
Type: feature

Change-Id: Iacb0da8bc738ed400678f9bb40e70e0031c6588e
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2020-12-01 16:49:32 +00:00
2df2f75ec5 tests: remove ip_punt from vpp_papi_provider and add ip_punt object models
Type: refactor

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I1bf53c2554e6b313467f618717698ed158db9065
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2020-12-01 13:31:41 +01:00
153e41a331 ipsec: change prediction
Type: improvement

This patch changes the prediction of the comparison between
SA owner thread index and the current thread index.

Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: I48de0bb2c57dbb09cfab63925bf8dc96613d8bcf
2020-12-01 08:02:06 +00:00
bb7991a037 avf: add TSO support
Change-Id: Ica663e1d07225acf53fd74b0051a5a2a34174960
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: improvement
2020-12-01 08:00:27 +00:00
8f5c6107c9 ebuild: perform build and install at the same time for external.mk
Change-Id: I65379f346fe3f881ce4196d99882cd6013e5e154
Type: improvement
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2020-12-01 07:55:21 +00:00
54a778010a tests: Fix unversioned python shebang lines
- Unversioned python shebang lines may cause
  mixed python 2.7 and python 3 execution in
  make test.

Type: fix

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: Ia82c37be33902718c48878378b8343eedb76c2c8
2020-11-30 16:56:43 -05:00
2440a8a6e7 svm: make svm queue mutex robust
Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I256774c25b3c4105139a4728724a1a0c775e740f
2020-11-30 16:05:59 +00:00
7d8a956287 tests: IPv6 multicast over GRE
Type: test

Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I6fc907ba923581540380bc9b456b5183fc100775
2020-11-30 12:33:09 +00:00
f55c34173a map: add include guard to map.h
Type: fix

Change-Id: I26c3640d9fe82d4cf22f19935eeca1411f9a1c3b
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-11-30 09:08:08 +00:00
7acab3790c dpdk: fix cryptodev compile
Type: fix

VPP 20.09 used new cryptodev raw APIs in cryptodev_dp_api.c
provided by the DPDK 20.08 patch attached.

The APIs has been updated between now and then and will cause
Cryptodev engine compile failed when bumping DPDK to 20.11
due to the incompatible API formats.

As a temp solution to successfully bumping DPDK version this patch
makes the newer DPDK version using old cryptodev APIs by compiling
cryptodev.c instead.

Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: I3db607c8c1b2b028166a750c4d66dfc6ff18814c
2020-11-27 15:50:35 +00:00