Florin Coras [Tue, 20 Oct 2020 01:36:48 +0000 (18:36 -0700)]
vcl: convert vep variables into flags
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ief017abc4879bc928746d9f5b9d2cfe04da89bd3
Neale Ranns [Tue, 20 Oct 2020 08:49:31 +0000 (08:49 +0000)]
ipsec: Stack the adj from the destination in the SA's TX table
Type: fix
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ib7f39243e051cdf44cc7151d14458a7fab42c6a8
Florin Coras [Mon, 19 Oct 2020 03:17:49 +0000 (20:17 -0700)]
vcl: cleanup read and write ready
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ib6afedf24c7bd7cc0d98bb324a83517030a05aa7
Dave Barach [Mon, 19 Oct 2020 20:05:07 +0000 (16:05 -0400)]
vppinfra: minor refactor in lock.h
For whatever reason, "typedef struct { ... } *foo_t" gives cgo a
horrible case of indigestion. A minor refactor makes the pain go away.
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I856b2abf9b16348d2f6145178e683e722914c756
Neale Ranns [Mon, 19 Oct 2020 14:47:20 +0000 (14:47 +0000)]
ip: Move the IP6 fib into ip6_[m]fib.c
Type: improvement
reduce the compile time by moving the bihash includes out of ip[46].h
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I6b9216e10aff1013071f9238b3e1ebbdd205bd80
Florin Coras [Sun, 18 Oct 2020 23:52:48 +0000 (16:52 -0700)]
hsa: refactor socket client app
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I020e62e1ad929742e1b14b807de3a6f04a9e496f
Florin Coras [Sat, 17 Oct 2020 00:57:36 +0000 (17:57 -0700)]
hsa: cleanup sock server test
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I769174f0023d00a59bc5a03cf0a05996b616742b
Neale Ranns [Fri, 16 Oct 2020 14:03:55 +0000 (14:03 +0000)]
ipsec: Layout and prefetching of SA struct
Type: improvement
- collect all DP used variables onto 1st or 2nd cache line
- prefetch the 2nd cache line
- in encrypt prefetch the likely location of the trailer.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I44d58f8d2d469ff71a4f4a71578e7cc1acaeba43
Damjan Marion [Sun, 18 Oct 2020 12:00:43 +0000 (14:00 +0200)]
virtio: fix compilation time
There is no need to inline 3 times virtio_refill_vring()...
Type: fix
Change-Id: Ic26e24fd7911af743fedd0e2282784b715e86c3c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Tue, 6 Oct 2020 09:58:40 +0000 (11:58 +0200)]
gso: add checksum validation in gro
Type: improvement
Change-Id: I0680c1626a46c8afcb7b6e665cc0734b7b37fd18
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Damjan Marion [Sat, 17 Oct 2020 11:33:32 +0000 (13:33 +0200)]
misc: don't export symbols from plugins
Type: improvement
Change-Id: I2a176fe2871d2e54b010bffc4f1f7a3616f0c455
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Sun, 18 Oct 2020 10:54:31 +0000 (06:54 -0400)]
vppinfra: add export symbols
format_one_elog_event()
vec_len_not_inline()
vec_free_not_inline()
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I0432c1b41b985de380e0b73886d0b03ecc19c703
Dave Barach [Sat, 17 Oct 2020 21:22:47 +0000 (17:22 -0400)]
vppinfra: export elog_get_events()
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ifc1bcbd8b5f8597796c993a2a5caf3a6c8d2471c
Damjan Marion [Sat, 17 Oct 2020 11:32:25 +0000 (13:32 +0200)]
vppinfra: explicitly export symbols
Type: improvement
Change-Id: I57a9f85f7df1fc48656b72592349f4c544302f77
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Sat, 17 Oct 2020 09:53:31 +0000 (11:53 +0200)]
misc: move gmod to extras/
Type: make
Change-Id: I057237ec5cef4dbecf6b6cd5a0adb4b7dfa78337
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Thu, 8 Oct 2020 15:44:36 +0000 (17:44 +0200)]
tap: replaces strlen to vec_len
Type: fix
Change-Id: I478b6fc54c47f0e77a1470ed29fdd56774671441
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Dave Wallace [Thu, 15 Oct 2020 19:53:50 +0000 (15:53 -0400)]
build: backport dpdk usertools support python3 only patch
- On Centos-8, 'make install-ext-deps' fails due to the
bpr-mangle-shebangs script failing the dpdk usertools
python scripts containing '#!/usr/bin/env python'.
Backport usertools section of the DPDK patch which
fixes this issue:
http://git.dpdk.org/dpdk/commit/?id=
3f6f83626cf4967a99382a6518a614a1bf3d2c20
- Also fix README to reflect name change of dpdk master
branch to 'main'.
Type: fix
Change-Id: I487b1ff2da786a4a3fd8fb0f859436b0e1885f1b
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Florin Coras [Thu, 15 Oct 2020 17:54:47 +0000 (10:54 -0700)]
vcl: remove accept state and rename connect to ready
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I57fcc6f9c154a6f83e0d59873b76c2e380e6f90a
Damjan Marion [Fri, 16 Oct 2020 13:28:47 +0000 (15:28 +0200)]
misc: deprecate VOM
Type: make
Change-Id: Ifb3e52af93d24fcc2f2e6a0c408e16902a2fe553
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 9 Oct 2020 14:43:43 +0000 (16:43 +0200)]
acl: do vlib_buffer_enqueue_to_next in outer function
Improves compilation time and reduces object file size for 1MB
Type: improvement
Change-Id: Ibe4840c0ced22070248d93822ea61afe20aff65c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Eric Kinzie [Wed, 14 Oct 2020 00:02:11 +0000 (20:02 -0400)]
ipsec: fix instance, and cli del for new ipsec interface
- use user instance number in interface name
Restore the behavior of previous versions where the IPsec tunnel
interface name contained the value of the user-provided instance number.
For example, a command similar to
create ipsec tunnel local-ip . . . instance 5
would result in the creation of interface "ipsec5".
- ipsec: delete tunnel protection when asked
The "ipsec tunnel protect" command will parse a "del" argument but does
not undo the tunnel protection, leaving the SAs hanging around with
reference counts that were incremented by a previous invocation of the
command. Allow the tunnel protection to be deleted and also update the
help text to indicate that deletion is an option.
- test: ipsec: add test for ipsec interface instance
Also cleanup (unconfig) after TestIpsecItf4 NULL algo test.
Type: fix
Fixes:
dd4ccf2623b5 ("ipsec: Dedicated IPSec interface type")
Signed-off-by: Eric Kinzie <ekinzie@labn.net>
Signed-off-by: Christian Hopps <chopps@labn.net>
Change-Id: Idb59ceafa0633040344473c9942b6536e3d941ce
Damjan Marion [Fri, 16 Oct 2020 09:23:48 +0000 (11:23 +0200)]
misc: bump debian compatibility level to 10
Level 9 is deprecated in new ubuntu release.
Type: improvement
Change-Id: I9376b5f7a1aa0860e35475c5d32f3626257d2f01
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dengfeng Liu [Mon, 12 Oct 2020 06:45:28 +0000 (02:45 -0400)]
nat: error in input parameter of init_nat_k
Type: fix
Signed-off-by: Dengfeng Liu <liudf0716@gmail.com>
Change-Id: I3e7ee771d0cf5b7b1b9fbbc833776d523dfa9f09
Chuan Han [Thu, 15 Oct 2020 21:16:49 +0000 (14:16 -0700)]
build: Add missing debian dependencies
Otherwise, vpp install will fail.
Type: improvement
Signed-off-by: Chuan Han <chuan.han.comm@gmail.com>
Change-Id: Ifb4d7b8f6fb7b333b8205ba6b424176f8554cfdc
Dave Barach [Thu, 15 Oct 2020 21:07:03 +0000 (17:07 -0400)]
vlib: add cgo-friendly plugin registration support
Allows us to declare plugin registrations in a non-disgusting way:
var plugin_reg = vpp.PluginRegistration{
Description: "The CGO plugin",
Version: "My Version",
Overrides: "sample_plugin.so",
}
It turns out that the specific compiler setup generates (.data section
offset, length) pairs in the .vlib_plugin_r2 section:
Contents of section .vlib_plugin_r2:
1ba9d0
00000000 00000000 50a81800 00000000 ........P.......
1ba9e0
0a000000 00000000 00000000 00000000 ................
1ba9f0
00000000 00000000 00000000 00000000 ................
1baa00
00000000 00000000 00000000 00000000 ................
1baa10
00000000 00000000 70a81800 00000000 ........p.......
1baa20
0e000000 00000000 ........
Contents of section .data:
18a800
00a81800 00000000 00000000 00000000 ................
18a810
00000000 00000000 00000000 00000000 ................
18a820
00000000 00000000 00000000 00000000 ................
18a830
00000000 00000000 00000000 00000000 ................
18a840
00000000 00000000 14000000 00000000 ................
18a850
4d792056 65727369 6f6e0000 00000000 My Version......
18a860
00000000 00000000 14000000 00000000 ................
18a870
54686520 45474f20 706c7567 696e0000 The CGO plugin..
18a880
00000000 00000000 0c000000 00000000 ................
<etc>
Unfortunately, it seems impossible to torture clang / gcc into
producing anything like this. This patch fabricates a plausible
vlib_plugin_registration_t from the so-called vlib_plugin_r2_t.
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I8c0c5a24f3b7bfea07d5181a7250b3d9685e8446
Aloys Augustin [Tue, 13 Oct 2020 13:43:00 +0000 (15:43 +0200)]
build: forward dependencies to arch-specific libs
Without this, if a multiarch source depends on a generated api header
for instance, the build would be racy between the api header generation
and the multiarch object compilation.
Type: improvement
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Change-Id: I08fcd0e5a1c51398ac1a8f37cf6562064b400d4a
Ivan Shvedunov [Thu, 15 Oct 2020 10:19:35 +0000 (13:19 +0300)]
ethernet: fix Ethernet DMAC checks
Type: fix
Due to confusion between ethernet flags and hw interface flags, DMAC
filtering was not happening, most of the time.
Signed-off-by: Ivan Shvedunov <ivan4th@gmail.com>
Change-Id: I95209e1ea0f95f9be0b1a82ec9fcbc80955428d2
Florin Coras [Wed, 14 Oct 2020 23:35:58 +0000 (16:35 -0700)]
vcl: refactor session state enum
Only allow one state instead of using flags.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I08ffccbf8c3f6e2f61533996bb36c799cbc931e7
Andrew Yourtchenko [Fri, 25 Sep 2020 14:06:34 +0000 (14:06 +0000)]
misc: 20.09 Release Notes
Type: docs
Change-Id: I1b12f1d14a1a68504767c01ceac0eed115fb7ba6
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
(cherry picked from commit
3c5414029bb432e51820e39e86f26fd6b39c6447)
PiotrX Kleski [Mon, 12 Oct 2020 13:33:11 +0000 (15:33 +0200)]
crypto: fixed ipsec_mb lib dependencies
Type: fix
This patch re-enables libIPSec_MB build for the ipsecmb crypto engine
plugin.
Also since DPDK meson build relies on system installed libIPSec_MB.so
that may be inconsistent with VPP compiled one (system installed
version vs VPP locally compiled version for example), this patch also
disables all libIPSec_MB dependant PMDs from DPDK build.
Also ipsec-mb version is incresed to 0.54.
Signed-off-by: PiotrX Kleski <piotrx.kleski@intel.com>
Reviewed-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: I2ff9e7cd0c35cff9fa642895301a26a5350ea94e
Neale Ranns [Thu, 8 Oct 2020 10:06:32 +0000 (10:06 +0000)]
mpls: no per-MPLS-tunnel tx node
Type: improvement
do not add a per-MPLS tunnel tx node. per-tunnl nodes limit the number
of tunnels that can be created to the number o fnodes that can be
created (64k).
improve the tx node.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I6016f05e809c6c64a0b098a101b28c9dd47824b3
Vladimir Isaev [Wed, 7 Oct 2020 11:55:11 +0000 (14:55 +0300)]
nat: Fix ICMP bypass session creation
After get_icmp_o2i_ed_key() bihash key may include
IP protocol and addresses from inner ICMP packet.
It is OK for session lookup, but we should not create
a session on ICMP error message receiving.
Type: fix
Signed-off-by: Vladimir Isaev <visaev@netgate.com>
Change-Id: Ic93272ebe90d2288a975265439f9e079eb28936a
Nathan Skrzypczak [Wed, 14 Oct 2020 11:26:57 +0000 (13:26 +0200)]
cnat: Fix backend LB
Type: fix
Change-Id: I4ea263270bcc38e505e88d512acacef7439f3823
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Dave Wallace [Mon, 21 Sep 2020 17:07:29 +0000 (13:07 -0400)]
build: add missing dnf-plugins-core package on centos-8
Type: fix
Change-Id: I1a4d9a7a8089cbf488dcd6f09eec6b4e0d0d72fe
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Florin Coras [Tue, 13 Oct 2020 22:10:29 +0000 (15:10 -0700)]
vlib: avoid clipping in show error
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia884d745a11565918c7bf89435ceb0e17b6aef59
fanyf [Tue, 13 Oct 2020 09:07:16 +0000 (17:07 +0800)]
vcl: set STATE_UPDATED state when connect with non-blocking socket!
State set to STATE_UPDATED to ensure the session is not assumed to be open and to also allow the app to close it prior to vpp's connected reply!
Type: fix
Signed-off-by: fanyf <fanyufei521@outlook.com>
Change-Id: I7a6d0914599cb9296d112205dac725ecd11a5d0f
jiangxiaoming [Tue, 13 Oct 2020 06:23:29 +0000 (14:23 +0800)]
vcl: app_name format type error
Type: fix
Signed-off-by: jiangxiaoming <jiangxiaoming@outlook.com>
Change-Id: I9f017ec84320ebc56f557385d73893ecf8f25bcd
Florin Coras [Fri, 9 Oct 2020 19:04:50 +0000 (12:04 -0700)]
tcp: fix bt acked_sacked on recovery
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I2e2d76661fbb07dd8c6afa3583bb18e01b7a7fb6
Florin Coras [Tue, 13 Oct 2020 14:40:42 +0000 (07:40 -0700)]
session: listeners verbose format alignment
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic8e98d7372af3bfde36bface49f9b90de5f3c64b
Florin Coras [Tue, 13 Oct 2020 02:08:22 +0000 (19:08 -0700)]
svm: fix coverity warning
Type: fix
Change-Id: I6c6255e66dd4cd0e4174b2a1658a3b8be40f0f7a
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Tue, 13 Oct 2020 02:03:52 +0000 (19:03 -0700)]
tcp: fix listener trace coverity warning
Type: fix
Change-Id: I75c0bd862260e188f625271c3bd545a7ab37af5d
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Tue, 13 Oct 2020 01:39:44 +0000 (18:39 -0700)]
session: allow custom config of segment baseva
Type: improvement
Change-Id: If9ea09d652c228004492cf47854a7f6c1f8b3bc2
Signed-off-by: Florin Coras <fcoras@cisco.com>
Ole Troan [Wed, 7 Oct 2020 16:05:37 +0000 (18:05 +0200)]
stats: counters data model
This adds a new data model for counters.
Specifying the errors severity and unit.
A later patch will update vpp_get_stats to take advantage of this.
Only the map plugin is updates as an example.
New .api language:
A new "counters" keyword to define counter sets.
counters map {
none {
severity info;
type counter64;
units "packets";
description "valid MAP packets";
};
bad_protocol {
severity error;
type counter64;
units "packets";
description "bad protocol";
};
};
Each counter has 4 keywords. severity, which is one of error, info or warn.
A type, which is one of counter64 or gauge64.
units, which is a text field using units from YANG.
paths {
"/err/ip4-map" "map";
"/err/ip6-map" "map";
"/err/ip4-t-map" "map";
"/err/ip6-t-map" "map";
};
A new paths keyword that maps the counter-set to a path in the stats segment KV store.
Updated VPP CLI to include severity so user can see error counter severity.
DBGvpp# show errors
Count Node Reason Severity
13 ethernet-input no error error
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ib2177543f49d4c3aef4d7fa72476cff2068f7771
Signed-off-by: Ole Troan <ot@cisco.com>
Filip Tehlar [Wed, 23 Sep 2020 11:20:12 +0000 (11:20 +0000)]
ikev2: fix initial contact cleanup
When looking for existing SA connection to clean up search all per
thread data, not only current one.
Type: fix
Change-Id: I59312e08a07ca1f474b6389999e59320c5128e7d
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Filip Tehlar [Tue, 6 Oct 2020 08:04:10 +0000 (08:04 +0000)]
ikev2: fix coverity warning
Type: fix
Change-Id: Iee96b3ea3e71ec248c3c3c98d153a08372b5faf0
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Filip Tehlar [Mon, 5 Oct 2020 12:30:44 +0000 (12:30 +0000)]
ikev2: fix memory leak in auth routine
Type: fix
Change-Id: I93529b069925fcef32cdb22e27975b802b4c3b97
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Matthew Smith [Mon, 12 Oct 2020 20:04:39 +0000 (15:04 -0500)]
l2: mark l2 fib uninitialized after clearing
Type: fix
After clearing the l2fib with 'vppctl clear l2fib', a SEGV occurs the
next time a MAC address is learned.
In l2fib_clear_table(), the l2fib bihash is freed and then
l2fib_table_init() is called to reinitialize it. l2fib_table_init()
will not do anything if l2fib_main.mac_table_initialized is set to 1.
Reset the value of l2fib_main.mac_table_initialized to 0 before
calling l2fib_table_init().
Change-Id: I87f1a3f9a46c951f36c1c0a5ab795b0ec08c81a8
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Damjan Marion [Sat, 10 Oct 2020 17:17:58 +0000 (19:17 +0200)]
misc: clang-11 and gcc-10 support
clang-11 complains:
error: field 'buffer_template' with variable sized type 'vlib_buffer_t' not at the end of a struct or class is a GNU extension [-Werror,-Wgnu-variable-sized-type-not-at-end]
Type: improvement
Change-Id: I2cb6b4fde723a05b42cf33dd8130df074f0362ab
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Mon, 12 Oct 2020 11:46:53 +0000 (11:46 +0000)]
ip: IP6 incorrectly disabled on removing first ip6 prefix
Type: fix
reference counting on the ip6 state was broken, meaning that disabling
one of serveral ip6 configs on an interface, completely ip6 disabled the
interface.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ie3af51587310ffe871ad2a9cbd927e15a3ececa9
Florin Coras [Thu, 8 Oct 2020 23:59:54 +0000 (16:59 -0700)]
tcp: use 100us timer resolution
Experimental reduction of tcp timer resolution from 100ms that
allows for finer grained timers, if needed. Please report
issues if any encountered.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I4050f7691aa7365b77298b4427408a4a447834fa
Florin Coras [Sun, 11 Oct 2020 18:05:04 +0000 (11:05 -0700)]
vcl svm: segments improvements
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I717c64666972bb4e440cb3d1180a5cb26ee25577
Florin Coras [Sun, 11 Oct 2020 18:20:56 +0000 (11:20 -0700)]
tcp: fix connection reuse with no listener
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I674872f68406ac778779a68d3ad991f41765d4e2
Vladimir Isaev [Tue, 6 Oct 2020 09:59:47 +0000 (12:59 +0300)]
nat: set fib index for bypass session
Bihash key already contains rx_fib_index for lookup
but fib value for session itself is set to 0.
In the result bihash is allocated with key with fib index
set, but free function is looking for key with fib index set
to zero. It leads to use-after-free because session itself is
removed from pool but bihash is not because of key mismatch.
Type: fix
Signed-off-by: Vladimir Isaev <visaev@netgate.com>
Change-Id: I8ac5a41b0a5a32b1baab9e9d757141d5b24b7798
Dmitry Vakhrushev [Sun, 11 Oct 2020 17:32:27 +0000 (20:32 +0300)]
lldp: fix typo in mac address constant
Type: fix
Fixes:
149fd3fbd069a5f7be86e68472578ee7af229cb6
Signed-off-by: Dmitry Vakhrushev <dmitry@netgate.com>
Change-Id: I06956f3ed3689172c3682d6b707991613255cabd
Dmitry Vakhrushev [Mon, 12 Oct 2020 10:43:39 +0000 (13:43 +0300)]
lldp: fix memory leakage
1. Typo in usage of vnet_hw_interface_add_del_mac_address(),
which returns 0 when it succeeds instead non zero value.
2. Generated error doesn't clean allocated resources for
an interface.
3. Returned value from vnet_hw_interface_add_del_mac_address()
should be erased or reported.
Type: fix
Fixes:
149fd3fbd069a5f7be86e68472578ee7af229cb6
Signed-off-by: Dmitry Vakhrushev <dmitry@netgate.com>
Change-Id: Ia6b28ae70fea127d15eb0102223ff972358766bc
Signed-off-by: Dmitry Vakhrushev <dmitry@netgate.com>
jiangxiaoming [Sat, 10 Oct 2020 07:23:54 +0000 (15:23 +0800)]
session: app_name should format with %v
Type: fix
Signed-off-by: jiangxiaoming <jiangxiaoming@outlook.com>
Change-Id: Ib096ad14e6ddbaff52429a416ea4d245703a368d
jiangxiaoming [Sat, 10 Oct 2020 09:32:11 +0000 (17:32 +0800)]
misc: clib_unix_warning usage error
Type: fix
Signed-off-by: jiangxiaoming <jiangxiaoming@outlook.com>
Change-Id: Ibc4e961388d0976b55b9b936d6a37d36cddab5fe
Damjan Marion [Thu, 8 Oct 2020 11:21:22 +0000 (13:21 +0200)]
avf: add add_del_mac_address handler
Type: improvement
Change-Id: I4d0b1cd87cf2f58a653f40a300da4b7a43348a06
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 9 Oct 2020 14:10:59 +0000 (16:10 +0200)]
acl: move nonip nodes to separate file
Type: refactor
Change-Id: Idcef8effa86d6421e4b3e5f747695ddb2982e78f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Fri, 9 Oct 2020 15:33:55 +0000 (11:33 -0400)]
wireguard: park the timer process
Until the feature is configured. It would make sense to push more of
the feature init code into the newly-added wg_feature_init()
function. This patch fixes a severe hemorrhoid.
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I87095575363baa41407dd52492159a7b8c2899e7
Dave Barach [Fri, 9 Oct 2020 14:17:22 +0000 (10:17 -0400)]
vlib: save signal handler data to global vbls
Turns out that clang is a bit too enthusiastic about mapping static
variables to registers, which makes it hard to extract (especially)
the faulting VA from an optimized core file.
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I836e5d9695aeb4c5ee4a27f9565acf08ee4eaac0
Filip Varga [Tue, 29 Sep 2020 14:53:20 +0000 (16:53 +0200)]
nat: ipfix logging separation & refactor
Type: refactor
Change-Id: I8785e4987e4f60361072440d0c3c6954c9c12394
Signed-off-by: Filip Varga <fivarga@cisco.com>
Florin Coras [Thu, 8 Oct 2020 20:33:20 +0000 (13:33 -0700)]
tcp: treat pending timers as active
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic63af51fab8dbefe79439554ea563f20e3788afa
Florin Coras [Thu, 8 Oct 2020 16:28:32 +0000 (09:28 -0700)]
tcp: custom geometry for timer wheel
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I04f992e5d91d21f1e5bbafef070478cfe268d94a
Dave Barach [Thu, 8 Oct 2020 20:04:30 +0000 (16:04 -0400)]
vppinfra: memory leak be gone
Type: fix
Fixes:
ab1a50cf7407e31097b550226c2b6954d6371bea / gerrit 29272
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ic8146a66b54bb9ac6223cf984d4566554b73276d
Neale Ranns [Thu, 8 Oct 2020 14:02:35 +0000 (14:02 +0000)]
pg: Choose the input interface from the stream's rx
Type: fix
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I656918a417d33ec6bea30054805e03ae19c38f2d
Neale Ranns [Thu, 8 Oct 2020 08:10:34 +0000 (08:10 +0000)]
gre: MPLS over GRE does not select correct fixup function
Type: fix
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I9eff41407b0f172f2b567e6a4ea1c48be8df883a
Neale Ranns [Thu, 8 Oct 2020 10:39:07 +0000 (10:39 +0000)]
l2: Fix compile error on unused next_index
Type: fix
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ifc6b4c15f6055df4f403e9cd633e31f061a6d2da
Damjan Marion [Wed, 7 Oct 2020 18:59:07 +0000 (20:59 +0200)]
interface: shorten vnet_hw_if_rx_mode
This is part of bigger refactor.
Type: refactor
Change-Id: I6fc2c0a1e2d217a70952901bcf775b8485bd3c20
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 7 Oct 2020 18:00:39 +0000 (20:00 +0200)]
pci: add vlib_pci_get_msix_file_index
Type: improvement
Change-Id: Ibc15aa6f75e989b2b7caa9a57e3665b1ffc7cc18
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Wed, 23 Sep 2020 11:25:21 +0000 (11:25 +0000)]
ip-neighbor: Grat ARPs from different subnet are dropped
Type: test
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Id07e8981a903f11f50fb494a93d01815382025e4
Neale Ranns [Tue, 29 Sep 2020 15:38:51 +0000 (15:38 +0000)]
l2: input performance
Type: improvement
- cache the values form the BD on the input config to avoid loading
- avoid the short write long read on the sequence number
- use vlib_buffer_enqueue_to_next
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I33442b9104b457e4c638d26e9ad3bc965687a0bc
Mohsin Kazmi [Wed, 7 Oct 2020 11:23:55 +0000 (13:23 +0200)]
virtio: fix the trace
Type: fix
This patch fixes the commit
e347acbc31111504c015531e8ad764a86d489309
Change-Id: Icee7a6e250c94ae93e606d7869acc55c7a5806b1
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Klement Sekera [Wed, 7 Oct 2020 12:19:44 +0000 (12:19 +0000)]
nat: use proper type for counters
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I330822c5d675cdfa57ab75ceb0223f11e0ebb7d2
Neale Ranns [Wed, 7 Oct 2020 13:58:56 +0000 (13:58 +0000)]
ipsec: Allow SAs with NULL auth &crypto on IPSec interface
Type: improvement
on the dedicated IPSec interface, the SA describes the peer, so it is
not possible to forward to a peer for which there is no SA. Therefore if
an SA is added with NULL auth and integ then this explicitly states that
this is what the peer desires.
on the contrary on the IP-IP/GRE interface, in the absence of protection
and an SA, then the traffic is sent in the clear. So adding NULL
auth/crypto iSA is a means to describe that the peer should not be sent
traffic.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I7ad2d466cc74eb7ff8c4c84e0d7897d06e2fcf86
Neale Ranns [Mon, 5 Oct 2020 12:26:47 +0000 (12:26 +0000)]
fib: Register multicast MAC with interface for accepting interfaces
Type: fix
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ic6c76b65e2dcc08916373153944507a297c962c0
Dave Barach [Wed, 7 Oct 2020 13:37:36 +0000 (09:37 -0400)]
vppinfra: fix coverity warnings
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I654747d618cc4fe99b7774827303769fe43392ed
Neale Ranns [Mon, 5 Oct 2020 12:39:41 +0000 (12:39 +0000)]
misc: Purge unused pg includes
Type: style
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I26a19e42076e031ec5399d5ca05cb49fd6fbe1cd
Ole Troan [Wed, 30 Sep 2020 08:43:00 +0000 (10:43 +0200)]
api: add heap alloc to vpp stats
The Python VPP Stats module also used the VPP heap.
Fix so it now explicitly allocates a heap.
Fixes:
f68fccfe7e188fec2c9f91da38ca9acf6f67d811
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I0bd4ae64d6c89cdf634d8d9a91c23ab38017c5cc
Signed-off-by: Ole Troan <ot@cisco.com>
Filip Varga [Mon, 14 Sep 2020 09:20:16 +0000 (11:20 +0200)]
nat: move nat64 to a subfeature
Type: refactor
Change-Id: I3b9e17164647d2019b1f40cffeed63393345219e
Signed-off-by: Filip Varga <fivarga@cisco.com>
Filip Varga [Wed, 23 Sep 2020 11:47:50 +0000 (13:47 +0200)]
nat: det44 plugin fix style and api cleanup
Type: refactor
Change-Id: I3c5ca31de8046b82fb3d3f364ba88370fe51ef02
Signed-off-by: Filip Varga <fivarga@cisco.com>
Damjan Marion [Tue, 6 Oct 2020 15:46:06 +0000 (17:46 +0200)]
vppinfra: add heap header in front of dlmalloc space
This patch adds smal header in front of dlmalloc space, and it stores
some additional information about the heap.
Immediate benefit of this patch is that we know the underlying page size
si we can display heap page statistics / real memory usage.
Type: improvement
Change-Id: Ibd6989cc2f2f64630ab08734c9552e15029c5f3f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Tue, 6 Oct 2020 18:08:16 +0000 (14:08 -0400)]
misc: add xxx_not_inline
vlib_main_t *vlib_get_main_not_inline(void)
vlib_thread_main_t *vlib_get_thread_main_not_inline(void)
elog_main_t *vlib_get_elog_main_not_inline()
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I6de306d567283ad28ef34c9be0cf27452aecbf6c
Jon Loeliger [Mon, 11 May 2020 13:43:51 +0000 (08:43 -0500)]
feature: Add packet trace API
Also spiffed up the vpp_api_test plugin loader so it executes
VLIB_INIT_FUNCTIONs and VLIB_API_INIT_FUNCTIONs.
Type: feature
Change-Id: Id9a4f455d73738c41bcfea220df2112bb9679681
Signed-off-by: Jon Loeliger <jdl@netgate.com>
Signed-off-by: Ole Troan <ot@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
Benoît Ganne [Mon, 5 Oct 2020 08:33:24 +0000 (10:33 +0200)]
vppinfra: address sanitizer: do not instrument dlmalloc internals
Type: fix
Change-Id: I8b50777b6ce7df461e5256921591a58e52877628
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Filip Tehlar [Tue, 8 Sep 2020 06:08:05 +0000 (06:08 +0000)]
ikev2: support ipv6 traffic selectors & overlay
Ticket: VPP-1917
Type: feature
Change-Id: Ie9f22e7336aa7807b1967c48de9843df10fb575c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Neale Ranns [Sun, 24 May 2020 16:17:50 +0000 (16:17 +0000)]
ipsec: Use bihash for tunnel lookup
Type: improvement
Change-Id: I0c82722dfce990345fe6eeecdb335678543367e0
Signed-off-by: Neale Ranns <nranns@cisco.com>
Klement Sekera [Fri, 2 Oct 2020 14:12:37 +0000 (14:12 +0000)]
lldp: set interface MAC address when enabled
Type: improvement
Change-Id: I4f2dc4e4c1c467fb9acd0fed231c56fcd54c8da9
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Dave Barach [Fri, 2 Oct 2020 15:35:44 +0000 (11:35 -0400)]
vlib: always replace bootstrap vlib_mains
Fixes an obscure issue when spinning up pure pthreads which don't have
vlib_main_t clones.
VLIB_REGISTER_THREAD () = {
<snip>
.use_pthreads = 1,
.no_data_structure_clone = 1,
}
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ifae5a2a35865de057eea7782ee71b1011a21c88e
Damjan Marion [Fri, 2 Oct 2020 13:01:12 +0000 (15:01 +0200)]
vppinfra: use clib_mem_create_heap() to create numa heap(s)
Type: improvement
Change-Id: Ie04302c576869bc7bfaa9f13ed2ea8a403a393d4
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Thu, 17 Sep 2020 11:41:18 +0000 (13:41 +0200)]
memif: map shared memory with clib_mem_vm_map_shared(...)
Type: improvement
Change-Id: I91031d56aae884a0a42fca343a2fc24c442b1da8
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 2 Oct 2020 10:13:08 +0000 (12:13 +0200)]
nat: add dummy nat_ha_resync() to avoid missing symbol errors
Type: fix
Change-Id: I288e93da192cf48b3d774e36584d471d4daa2727
Signed-off-by: Damjan Marion <damarion@cisco.com>
Nathan Skrzypczak [Thu, 1 Oct 2020 14:50:14 +0000 (16:50 +0200)]
ip: Fix unformat_ip_prefix
Type: fix
Change-Id: I73629ccf7d5a49da3858899dc727cc180fb53003
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Filip Tehlar [Thu, 1 Oct 2020 03:08:52 +0000 (03:08 +0000)]
ikev2: fix leaking pending INIT requests
.. when associated profile is deleted.
Type: fix
Change-Id: Ib05831d79b3b58664ee0a930960513fd465373bf
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Neale Ranns [Tue, 29 Sep 2020 14:44:23 +0000 (14:44 +0000)]
vppinfra: Function to check if a bihash has been initialised
Type: improvement
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ic31f7721f326ca9d78d645abcea63ce58df5bd5b
Vladimir Ratnikov [Thu, 1 Oct 2020 10:16:13 +0000 (06:16 -0400)]
dpdk: split PCI blacklist rte_eal args from startup.conf
Type: fix
Fixes:
ed04407829728c5d258b6600155edabd5198d971
Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com>
Change-Id: I5aebcba7b97db758310042fd446328ee8f691641
Benoît Ganne [Wed, 30 Sep 2020 16:35:27 +0000 (18:35 +0200)]
ikev2: fix cli memory leak
Type: fix
Change-Id: Ibdd83fa336427ec0c66224ecebb1b6bd36d1d1ba
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Mon, 28 Sep 2020 15:34:17 +0000 (17:34 +0200)]
vppinfra: fix legacy huge pages creation for default size
Type: fix
Change-Id: I941b92ebec66ccd9c9e9a12d485844313c9f117b
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Chuan Han [Fri, 25 Sep 2020 22:34:06 +0000 (15:34 -0700)]
build: fix build for debian testing
1. add libelf-dev to default deb deps
2. Also use libffi7 instead of libffi6 for debian-testing
Type: fix
Signed-off-by: Chuan Han <chuan.han.comm@gmail.com>
Change-Id: I9f13955812877422ecb8aac3dd34c5828b9c4607
Alexander Chernavin [Thu, 1 Oct 2020 12:57:59 +0000 (08:57 -0400)]
misc: allow disabling of ipfix exporter via api
Zero collector address indicates that the IPFIX exporter is disabled.
You can zero the collector address via vppctl but you can't do it via
the API because the handler returns an error if the address is zero.
With this change, do not return an error in the handler when the
collector address is zero thus allowing the IPFIX exporter be
disabled.
Type: fix
Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
Change-Id: I1335c0d06af81f11d743c395399a360c612c0c21