Chenmin Sun [Mon, 7 Oct 2019 19:35:20 +0000 (03:35 +0800)]
vlib: fix cli process stack overflow
Type: fix
Some cli processes, including configuring an test flow
on an i40e interface consume more than the currently
available stack space.
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I3df53d251cd43286f94647384d6e50a463bad15c
(cherry picked from commit
2fd44a00aa26188ca75f0accd734f21758c199bf)
MathiasRaoul [Mon, 7 Oct 2019 15:41:37 +0000 (15:41 +0000)]
quic: fix wrong condition in update_fifo_size
Type: fix
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: If371cde9412be29634164830c58634da248ad0ae
(cherry picked from commit
cc702410c18b5c54ec8686b02a0d208c9bc80421)
Dave Barach [Wed, 9 Oct 2019 16:57:13 +0000 (12:57 -0400)]
vppinfra: fix page boundary crossing bug in hash_memory64
Fix a day-1 bug, possibly dating back as far as 2002. The zap64() game
involves fetching 8 byte chunks, and clearing octets not to be
included in the key.
That's fine *unless* the 8-byte fetch happens to cross a page boundary
into unmapped or no-access space.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4607e9840032257c96ba7387f86c931c0921749d
(cherry picked from commit
7e2cea3d26701ff1d80fda7d8ca907890e3e7baa)
Benoît Ganne [Mon, 14 Oct 2019 12:54:34 +0000 (14:54 +0200)]
gbp: use correct dst mac for RD-UU forward
Type: fix
Change-Id: Ifdd193fab24796346b11a5df81740880f9a50ee8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
db056acca08900d05ef806a6bab74ea30b262f0f)
Steven Luong [Wed, 9 Oct 2019 17:29:47 +0000 (10:29 -0700)]
bonding: feature arc may not be enabled for the slave interface
vnet_feature_enable_disable takes sw_if_index, not hw_if_index. If there
is a subinterface created prior to the slave interface is created,
sw_if_index and hw_if_index start to diverge and the problem will happen.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I11e1f099378832f83b748526c6cbeb56960fad3c
(cherry picked from commit
1a41a35b27da6921d6d86a9f1ad5f1b46e1185f7)
Benoît Ganne [Mon, 7 Oct 2019 13:06:52 +0000 (15:06 +0200)]
ip: fix clang debug compilation
The non-extern declaration confuses clang linker in debug mode.
The function is defined as inline above anyway.
Type: fix
Fixes:
c6215d902f
Change-Id: Ic7e4477631cf0bcfb31ab3f81effe3642dd4223e
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
5b1379be3e25df096d97dcd217965169fc6bb1b2)
Simon Zhang [Tue, 24 Sep 2019 13:16:56 +0000 (21:16 +0800)]
tcp: fix tso not work in single buffer issue
Type: fix
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
Change-Id: Iddb6fd41812e8c97af58859ef43279cfc0f9d1df
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
(cherry picked from commit
8a047ed741072bdb8d93b0841473eae06ae3c9d0)
Rajesh Goel [Sun, 6 Oct 2019 07:47:36 +0000 (13:17 +0530)]
mpls: support fragmentation of mpls output packet
Type: fix
Signed-off-by: Rajesh Goel <rajegoel@cisco.com>
Change-Id: Ie4372c5cf58ab215cdec5ce56f8a994daaba2844
(cherry picked from commit
d6f1c9c5141c177a14d011a514e392a9357398fb)
Neale Ranns [Tue, 8 Oct 2019 05:40:54 +0000 (22:40 -0700)]
ip: only install IPv6 prefixes in FIB when the interface is up
otherwise they get installed twice and the reference counting means they are not removed.
This is the same behaviour as IPv4.
Type: fix
Change-Id: I9266e04ccff6ff06a577e85973a2ddbeb9dfc52b
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
1ff3c15b3c7607c9b590ad44d18dea5eb1cb8c4e)
Neale Ranns [Tue, 8 Oct 2019 05:44:54 +0000 (22:44 -0700)]
fib: P2P interfaces do not need specific multicast adjacencies
they can use the 'auto' adj for all traffic
Type: fix
Change-Id: Id2b9557683252a94badc8f9dfab5f7b2ae26f1ee
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
da0e7497ca972f3219352d884b5c51e455503dbb)
Klement Sekera [Tue, 1 Oct 2019 19:14:34 +0000 (19:14 +0000)]
tests: handle unicode charactes in cli output
Type: fix
Change-Id: Ic4fb53e6d10a1de155a3088be81d53d9efeb0c0f
Signed-off-by: Klement Sekera <ksekera@cisco.com>
(cherry picked from commit
6be55648334308d4eaa4a02143b968720bb62078)
Nathan Skrzypczak [Mon, 16 Sep 2019 14:26:58 +0000 (16:26 +0200)]
build: add env variable to pass extra cmake args
If VPP_EXTRA_CMAKE_ARGS is set, its content will be
appended to the vpp cmake command cli
Type: feature
Change-Id: I825d4239e62b0a2fb70a652f0671f6c559630aad
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
(cherry picked from commit
29736540335fb983f472457883e9fefde61bd913)
Florin Coras [Tue, 8 Oct 2019 00:19:09 +0000 (17:19 -0700)]
tcp: rate sample for persist segments
Type: fix
Change-Id: I7c38d2ad6364f098529f51c15b533eb234b82716
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
dd60b1b128d8d6c07dc8b8bcbf932b808cedbaab)
Christian E. Hopps [Sun, 29 Sep 2019 01:36:36 +0000 (21:36 -0400)]
vlib: move thread barrier around mod of global node next data
The old code modified the node next array prior to obtaining the thread
barrier. Then it updated the runtime node data, and upon barrier release
caused reforking of each worker thread. The reforking clones the main
thread nodes and reconstructs the runtime node structure. This cloning
is not 100% "deep" in the sense that the node next array is
shared (i.e., only the pointer is copied). So prior to the barrier being
obtained the node's next array is being changed while workers are
actively using it (bad). Treating the node next array as read-only in
the workers and sharing it is a decent optimization so instead of trying
to fix that just move the barrier a little earlier in the process to
protect the node next array as well.
This was tripping an assert in next frame ownership change by way of the
ip4-arp node. The assert verifies that the node's next array length is
equal to the runtime next node count. The race above was lost and the
node next array data was updated in the main thread while the arp code
was still executing in a worker.
This was being hit when many arp requests were being sent from both ends
of a tunnel during which the add next node function was called, which
often led to an assert b/c the next node array was out of sync with the
runtime next node count.
- PS#2 update - move barrier sync to just above code that modifies state.
Ticket: VPP-1783
Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I868784e28f994ee0922aaaae11c4894a3f4f1fe7
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
(cherry picked from commit
d3122ef4ecfa9a515cc39c1632d29e43fa771b2a)
Neale Ranns [Mon, 7 Oct 2019 08:13:44 +0000 (08:13 +0000)]
dhcp: API return code fix
Type: fix
Change-Id: Ifcbfeecd6ca1215ec473eec4cce736ab4eacde80
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
d751746af9ca1130202d19bddd96a5f6af2ecc5c)
Neale Ranns [Sun, 6 Oct 2019 08:04:26 +0000 (01:04 -0700)]
ip: Fix IP unnumbered dump of one interface
Type: fix
Change-Id: I35fb6fdfba50c4a59cf1ffb94cb51487bcf5afc9
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
ac3e72cb9765f78f1cf03ff5d5ccd9ff944668b6)
Dave Barach [Fri, 4 Oct 2019 13:59:00 +0000 (09:59 -0400)]
misc: add "show run summary"
Prints the interior node vector rate, rx / tx / drop rates
Type: feature
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I57130db0f99e852a8498aa90d01e52f7ac33dcc9
(cherry picked from commit
ac78f8a902fc61465edf657f7c7da7ff575210c8)
MathiasRaoul [Fri, 4 Oct 2019 15:28:00 +0000 (15:28 +0000)]
hsa: make APP_OPTIONS_PREALLOC_FIFO_PAIRS configurable
-add prealloc_fifo_pairs member in echo_main_t
-new cli parameter in vpp_echo
Type: feature
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I6bb1214ee93e06421cd0a3721420278c51cd59c4
(cherry picked from commit
7028a0157e28066696fba7d9978f7ab474f4d4f8)
MathiasRaoul [Fri, 4 Oct 2019 15:27:03 +0000 (15:27 +0000)]
quic: make quic fifo size configurable via cli
Type: feature
Depends-On: I8d71078a9ed42326e19453ea10008c6bb6992c52
Change-Id: I6d6ac649094ef4bee2aed311915dd58f11972e79
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
(cherry picked from commit
00078b991365db97edf919567ca8b169ffd9b3e4)
Benoît Ganne [Wed, 16 Oct 2019 13:08:37 +0000 (15:08 +0200)]
fib: fix use-after-free for interface adj removal
Type: fix
Change-Id: I82308e368d14d84f5970dad229bdcf2de7d1839d
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
7391156ce68a81f258d65f498ec6161d694fae47)
Steven Luong [Thu, 10 Oct 2019 18:36:41 +0000 (11:36 -0700)]
bonding: graph node running after bond-input in feature arc may crash
In bond RX quad loop, when all packets within the frame have the same incoming
interface, we cannot skip calling bond_update_next because that function calls
vnet_feature_next() to update the b->current_config_index. The next node needs
the correct b->current_config_index to work with.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I3d8b3d4e0f95490f406fae7638f0c43c301ce664
(cherry picked from commit
71e5b4710258376873c62428cb4a81b2a650fc26)
Neale Ranns [Thu, 10 Oct 2019 19:59:02 +0000 (12:59 -0700)]
ip: RD-CP API incorrect reply code
Type: fix
Change-Id: Ie436d51999dc1384a0db492f28a7e66620e14551
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
be01e635bcc942395c581eeb5a108edaaa82e36f)
Neale Ranns [Mon, 14 Oct 2019 15:52:43 +0000 (08:52 -0700)]
fib: recursive calculation leads to delegate pool realloc
Type: fix
Change-Id: Ib7ac53d1b59b641ccd3b1d733107d7f1ba174314
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
a66020becd7d01eefea55244cbcf5df9679a9443)
MathiasRaoul [Fri, 4 Oct 2019 09:53:45 +0000 (09:53 +0000)]
vppinfra: create unformat function for data size parsing
Type: feature
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I8d71078a9ed42326e19453ea10008c6bb6992c52
(cherry picked from commit
579b165069e7c14392cded3a76e5cc1964ad13a9)
Christian E. Hopps [Fri, 27 Sep 2019 16:59:30 +0000 (12:59 -0400)]
misc: add "maxframe" and "rate" to packet-generator cli.
Allow for setting the maximum number of generated packets to be included
in the frame passed to next nodes. This is very important for testing
code which may be susceptible to multi-frame vs single-frame bugs (e.g.,
code that is doing re-ordering where packets may be buffered between
frames).
Update:
- remove redundant packet "rate" option.
- reduce n_max_frame to u32 as that's what pulled from the CLI.
Type: feature
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ie362bbb110b2cf01d9f65c559bbe9101e17b7fdc
Signed-off-by: Christian Hopps <chopps@labn.net>
(cherry picked from commit
87d7bac5cf2ebdc7820e1edaadc2cc3b6d111cf2)
Benoît Ganne [Mon, 7 Oct 2019 13:36:10 +0000 (15:36 +0200)]
rdma: fix crash when failing to read pci addr on create
Type: fix
Change-Id: I543e2e5976cb384b81278a7ec98a0a6ab1612438
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
0dd97d473bc0c958d9fcea508e1f5122a137b23f)
Benoît Ganne [Mon, 7 Oct 2019 13:57:32 +0000 (15:57 +0200)]
rdma: fix crash when failing to detect numa node on create
Type: fix
Change-Id: Ibb8e7c1c13869c1dce2385f58bd7260fcf776c5a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
90ea5dc1bd7adcedd0d5765c3ee04c98c4853337)
Benoît Ganne [Fri, 4 Oct 2019 15:30:21 +0000 (17:30 +0200)]
vlib: pci: set pci driver name to none when no driver is loaded
If no Linux PCI driver module is loaded, then the driver_name in the PCI
info struct is NULL. This can triggers crash when checking driver name
eg. in vlib_pci_device_open().
Default to "<NONE>" as driver name, which should never match.
Type: fix
Change-Id: I9e69889a7566467bd8220b92bbbaa72ada957257
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
0eae2bb1f1199f7dcb6a8c62b1ea612ed9ee4ae1)
Benoît Ganne [Mon, 30 Sep 2019 08:55:33 +0000 (10:55 +0200)]
ip: fix use-after-free in IPv6 SLAAC expiration
Type: fix
Change-Id: I46b166b3a10c4543eafa4422531dd3c725db45f1
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
79c9d3650357fa675df2998e362e9881cff17a34)
Benoît Ganne [Thu, 18 Jul 2019 15:33:42 +0000 (17:33 +0200)]
nat: fix use-after-free
Type: fix
Change-Id: Iac91c086c4e975f0bada058f40b7b7d4475377f8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
7233846ce93fddef495a1029ca211f42afe046f2)
Steven Luong [Wed, 2 Oct 2019 14:33:48 +0000 (07:33 -0700)]
devices: vhost not reading packets from vring
In a rare event, after the vhost protocol message exchange has finished and
the interface had been brought up successfully, the driver MAY still change
its mind about the memory regions by sending new memory maps via
SET_MEM_TABLE. Upon processing SET_MEM_TABLE, VPP invalidates the old memory
regions and the descriptor tables. But it does not re-compute the new
descriptor tables based on the new memory maps. Since VPP does not have the
descriptor tables, it does not read the packets from the vring.
In the normal working case, after SET_MEM_TABLE, the driver follows up with
SET_VRING_ADDRESS which VPP computes the descriptor tables.
The fix is to stash away the descriptor table addresses from
SET_VRING_ADDRESS. Re-compute the new descriptor tables when processing
SET_MEM_TABLE if descriptor table addresses are known.
Type: fix
Ticket: VPP-1784
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I3361f14c3a0372b8d07943eb6aa4b3a3f10708f9
(cherry picked from commit
61b8ba69f7a9540ed00576504528ce439f0286f5)
Neale Ranns [Mon, 7 Oct 2019 08:23:38 +0000 (08:23 +0000)]
ip: MFIB CLI fix for parsing path flags
Type: fix
Change-Id: I7ed9726d8c5ca26715a84b004a18fd7f93142486
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
46023762d1da674ff73954f0d1523d450bfcf03c)
Dave Barach [Fri, 11 Oct 2019 15:31:43 +0000 (11:31 -0400)]
lisp: fix dangling references to bihash tables
gid_ip4_table_t's and gid_ip6_table_t's are allocated from pools. They
MUST NOT be listed on the clib_all_bihash list to avoid dangling
references.
Switch to the clib_bihash_init2 API, which has the required knob.
Type: fix
Ticket: VPP-1788
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I49a17e937922c3af2e1c46b24e20883af51584a8
Benoît Ganne [Mon, 30 Sep 2019 10:56:28 +0000 (12:56 +0200)]
tcp: unittest: do not access non-existent samples
There is no bt->samples for this test, do not use it.
Type: fix
Change-Id: I2090290887bc5c0b5cdb0561cf2bf72a87781089
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
b0a7c484eec9a813751e6e3fa71a9955ad5f0f74)
Andrew Yourtchenko [Thu, 3 Oct 2019 07:55:52 +0000 (07:55 +0000)]
acl: fix intermittent test failure
ACL tests use random port number in the tests.
A port number 6081 causes the decode in scapy
to consume some of the Raw payload into GENEVE
encoding, which breaks the test.
Solution: bring up the lower range of random
port to 16384, so that it does not touch any
of the well known ports.
Type: test
Change-Id: I022660d8ec147857924b436f1871b0b5ddcf4c47
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
ec574ff9129a7cc4282916d2a989e88d78aaff60)
MathiasRaoul [Thu, 26 Sep 2019 09:17:13 +0000 (09:17 +0000)]
quic: Create custom event logger
Type: feature
Change-Id: I20acfe6a53cf9f15e3e4b8847b6f76757962f1c7
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
(cherry picked from commit
dd4d8ac29202fe54e74a13ce86d1ba3f79d1555f)
Benoît Ganne [Fri, 27 Sep 2019 16:07:39 +0000 (18:07 +0200)]
api: fix non-null-terminated C-string
Type: fix
Change-Id: I132112bf77e1fad7fc0227a96e6b0cee590295e8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
fb0bb3a732cd46848e26fcc6a17d9fdf99727af3)
Christian E. Hopps [Fri, 27 Sep 2019 19:05:41 +0000 (15:05 -0400)]
ipsec: initialize msgid and allow no dh in child sa
- set msgid to 0 not random.
- allow for no DH in ESP child SA
Ticket: VPP-1781
Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ibe26009d38f444eeaec5b042097f145d161c7672
(cherry picked from commit
0e182c5b1d27139764dca7059c9c91be8387977a)
MathiasRaoul [Thu, 26 Sep 2019 09:13:39 +0000 (09:13 +0000)]
quic: Add Tx, Rx and packet drop counters
Type: feature
Change-Id: I25aeeed49fc569315296a73c5595c2e2e302434f
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
(cherry picked from commit
ff1f6faaa90cd446545a8d0c0b0baa85d69efa35)
Benoît Ganne [Thu, 18 Jul 2019 16:38:42 +0000 (18:38 +0200)]
session: fix use-after-free
Make sure to reinitialize data before free-ing it.
Type: fix
Change-Id: I45727c456d0345204d4825ecdd9690c5ebeb5e94
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
d4aeb84c3f066b755b723163da292eab95bd1ef9)
MathiasRaoul [Thu, 26 Sep 2019 09:07:16 +0000 (09:07 +0000)]
quic: add cli command for stats
add command to display stats from quicly (rtt, packet loss)
Type: feature
Change-Id: Iaa18bc78fbf80a9367ef150a8cf4997a456c6b39
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
(cherry picked from commit
922f0b211c160b4f1d05b87ad0103581d17efb8b)
Burt Silverman [Mon, 30 Sep 2019 13:50:42 +0000 (09:50 -0400)]
build: build-root/Makefile rm of install tree
Type: fix
The scenario is touch of a dpdk source file in places like
<TOP>/build-root/build-vpp-native/external/dpdk-19.08/. The subsequent
build will trigger an rm -rf $(PACKAGE_INSTALL_DIR) by
build-root/Makefile at around line 709. Because the package in
question, "external", consists of various "sub" packages, all of which
are controlled with files like .quicly.install.ok located in
build-root/build-vpp[_debug]-native/external, we end up not handling the
.*.install.ok files to reflect the removal of that PACKAGE_INSTALL_DIR.
This fix will correct that, at least for the case of touching/changing
dpdk files. A better long term solution would be to change the "sub"
packages to be full fledged build system packages, as Dave Barach points
out.
Signed-off-by: Burt Silverman <burtms@gmail.com>
Change-Id: Ia94ccaa2795cbf354b5921c3001a7141313b66be
(cherry picked from commit
839a7bce3872f992f4807ee6d6a76f9b361151dc)
Nathan Skrzypczak [Fri, 27 Sep 2019 15:03:15 +0000 (17:03 +0200)]
hsa: fix vpp_echo mq locking
Type: fix
Change-Id: I18d2cde0baaed4134e8378c09aaa88693fb997f8
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
(cherry picked from commit
46b91ebb5c350ceeccec97d8e09524f708512342)
jaszha03 [Fri, 27 Sep 2019 16:48:23 +0000 (11:48 -0500)]
vppinfra: implement CLIB_PAUSE () for aarch64 platforms
Define CLIB_PAUSE () to generate the "yield" instruction. No significant
performance changes were observed for clib_spinlock_t and clib_rwlock_t.
Type: feature
Change-Id: I59eb996e61c7a16007517e57e6996567302c1657
Signed-off-by: Jason Zhang <jason.zhang2@arm.com>
Reviewed-by: Lijian Zhang <Lijian.Zhang@arm.com>
(cherry picked from commit
18512b002da5da312aa2638b67a8ec4bb2c10236)
Srikanth A [Thu, 3 Oct 2019 00:48:58 +0000 (17:48 -0700)]
tcp: custom checksum calculations for Ipv4/Ipv6
Type: feature
Based on the configuration, we can disable checksum offload capability
and calculate checksum while pushing the TCP & IP header.
This saves some cycles when VPP stack is used in legacy hardware devices.
Signed-off-by: Srikanth A <srakula@cisco.com>
Change-Id: Ic1b3fcf3040917e47ee65263694ebf7437ac5668
Benoît Ganne [Fri, 4 Oct 2019 13:28:12 +0000 (15:28 +0200)]
rdma: prevent loopback of broadcast packets
TX queues must be created before RX queues on Mellanox cards in order to
not receive our own broadcast packets.
Type: fix
Change-Id: I32ae25a47d819f715feda621a5ecddcf4efd71ba
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
df213385d391f21d99eaeaf066f0130a20f7ccde)
Benoît Ganne [Fri, 4 Oct 2019 15:38:05 +0000 (17:38 +0200)]
rdma: make sure pci subsystem is initialized
The rdma driver use the pci subsystem, make sure the dependency is
recorded.
Type: fix
Change-Id: Ibd613f623d355612881acc31b9423f2de13793a3
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
4a98388daec998a56cb150e2acb8a26ae51c0c28)
Benoît Ganne [Mon, 30 Sep 2019 08:13:27 +0000 (10:13 +0200)]
dns: fix non-NULL terminated C-string
Type: fix
Change-Id: Ib030e6ac3386528901e0805d1ffe2eec033d819f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
328c08d603bb0a9956b82553f1691fd8a5a5de7d)
Benoît Ganne [Fri, 30 Aug 2019 14:20:12 +0000 (16:20 +0200)]
vlib: fix old nodes vector overflow in refork
Type: fix
Change-Id: I81c4cf0ce87288bb2d3c7b9f31e9419290d588b4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
5517bd34535e4ffffb838a835bb95ddcb77e2bba)
Benoît Ganne [Mon, 9 Sep 2019 14:34:54 +0000 (16:34 +0200)]
ipsec: fix use-after-free
When deleting interface from the API, 'hi' gets removed before
'h->sw_if_index' is copied.
Type: fix
Change-Id: I8e10108e9bdf95ab2fe002790d98262d583ca58c
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
8133c780a22480496c74a4ead321e8350d5beeb4)
Benoît Ganne [Fri, 27 Sep 2019 16:08:22 +0000 (18:08 +0200)]
bonding: fix non-null-terminated C-string
Type: fix
Change-Id: Ibb7ba878b049b8b18e890c43fdd6324cb88d63b8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
5c828bc1f24fb5222d6bb634d8e5228ed8b138f0)
Benoît Ganne [Wed, 11 Sep 2019 14:43:44 +0000 (16:43 +0200)]
api: fix use-after-free
Type: fix
Change-Id: I2a599c22d5770587fdd419e5d212c8527054d2e9
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
f26b2511cf661d4ebef32c19f944041637ec5907)
Steven Luong [Fri, 4 Oct 2019 21:18:37 +0000 (14:18 -0700)]
bonding: traffic traversing the wrong interface
Missing an increment in the while loop. Hashes not stored in the array.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I603027f5a7305478f48a102ac8035ffde9102c53
(cherry picked from commit
0471cdbd3fe04a88a8b70b5f0eff0c378e19abf7)
Benoît Ganne [Mon, 30 Sep 2019 08:56:33 +0000 (10:56 +0200)]
hsa: fix non-NULL terminated C-string use in echo
Use '%v' format for non-NULL terminated vectors instead of '%s'.
Type: fix
Change-Id: Id83de52486ad8dad3cdf3f32dad63a223fc1fdf7
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
bb5ff4e4bb6dbf679a49fc9786718ad6fe229e84)
Nathan Skrzypczak [Mon, 30 Sep 2019 12:49:13 +0000 (14:49 +0200)]
session: Fix missing elt regrab
Type: fix
Change-Id: Ie756c5477d989702e633aa0d42ca154ff32b4c9a
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
(cherry picked from commit
19e52c96dcd5f523c2b97aee56cb2e7751d4690a)
Neale Ranns [Fri, 27 Sep 2019 13:32:02 +0000 (13:32 +0000)]
ipsec: support 4o6 and 6o4 for tunnel protect
Type: feature
Change-Id: Ib2352ca4c7abf4645f21fa16aaaf27408890a2bf
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
b325983a4461dd806e86a31abc47533b09482157)
Dave Barach [Wed, 25 Sep 2019 15:27:46 +0000 (11:27 -0400)]
misc: add vnet classify filter set support
Type: feature
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I79b216d2499df143f53977e5b70382f6f887e0bc
(cherry picked from commit
f5667c3055dbd6755277f085c6778c2b1104aa6e)
Dave Barach [Tue, 1 Oct 2019 17:34:23 +0000 (13:34 -0400)]
vlib: improve summary vector-rate statistics
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4b77879b0a84fdec3c1518a972cf003d5135222d
Signed-off-by: Ole Troan <ot@cisco.com>
(cherry picked from commit
a8df85ce1fe957efa8301bd5b5ac3c03737d31f1)
Benoît Ganne [Mon, 30 Sep 2019 10:39:55 +0000 (12:39 +0200)]
stats: fix per-worker stat vector length
Type: fix
Change-Id: I198a2312f5fc6e922c8a6c51ba7248ce6e236f81
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
dba00cad1a2e41b4974911793cc76eab81a6e30e)
Florin Coras [Tue, 1 Oct 2019 17:32:46 +0000 (10:32 -0700)]
session: allow transport cleanup in any state
Type: fix
Third time's a charm
Change-Id: I31555a35d2b51f49a93a2a213c28896b0cad4c09
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
b5a2f7056967630c2834b0b4bf03520d96806c3e)
Benoît Ganne [Mon, 30 Sep 2019 14:43:25 +0000 (16:43 +0200)]
rdma: fix non-NULL terminated C-string overflow
Type: fix
Change-Id: I584777825636347c116bd084e348858bcb1b7d75
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
7ff07354c3a6969e306f75bf28502a46697abcda)
Nathan Skrzypczak [Fri, 27 Sep 2019 15:04:47 +0000 (17:04 +0200)]
session: fix io_evt mq locking
Type: fix
Change-Id: Iaa8045bba19cc305c84074668a20e1468d431b10
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
(cherry picked from commit
35174b428b99978503332107a9f330d8b3478bd5)
Dave Wallace [Sat, 21 Sep 2019 04:19:26 +0000 (04:19 +0000)]
tests: add quic plugin qclose/sclose tests
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I3122b038f7d77c7e5e8ee7c24046da6c94ca2d2c
(cherry picked from commit
83c1e9a35b41c3bc871a2508f847e64528efccac)
Benoît Ganne [Fri, 19 Jul 2019 11:42:12 +0000 (13:42 +0200)]
ip: fix use-after-free in reassembly
- ip{4,6}_reass_finalize() frees the reassembly context: do not access
it after the call.
- traces access reassembly context: free it after and not before
tracing.
Type: fix
Change-Id: Ia3aaea9c7b74932e249e013be04b9bd7298fd187
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
2d0ebd7ebc555565868038a09d80a61f5de29430)
Damjan Marion [Tue, 24 Sep 2019 22:25:36 +0000 (00:25 +0200)]
classify: use vector code even when data is not aligned
Type: feature
Change-Id: I8f5f4841965beb13ebc8c2a37ce0dc331c920109
Signed-off-by: Damjan Marion <damarion@cisco.com>
(cherry picked from commit
8304933922620cef005b788a36a4d3f2eab45bb5)
Klement Sekera [Wed, 6 Mar 2019 10:59:57 +0000 (11:59 +0100)]
ip: respect buffer boundary when searching for ipv6 headers
Type: fix
Change-Id: I5a5461652f8115fa1270e20f748178fb5f5450f2
Signed-off-by: Klement Sekera <ksekera@cisco.com>
(cherry picked from commit
769145cdbc28324bd0b6304951199ec3d6e0e883)
Florin Coras [Tue, 27 Aug 2019 22:13:35 +0000 (15:13 -0700)]
session: fix unbind coverity warning
Type:fix
Change-Id: If4fce6bd9b06ed545d72df847afd6a74cdefe042
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
eef61bb81a22f4c61c01e5afc8bd3b8612a71534)
Christian E. Hopps [Fri, 27 Sep 2019 18:43:22 +0000 (14:43 -0400)]
ipsec: add insecure option for format of SA
If specified, shows keys, otherwise redacts. This change sets this flag
in the existing CLI code (thus maintaining the old behavior). The use
case for not specifying the insecure flag (and thus redacting the keys
from the show output) is for log messages.
Type: feature
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I8c0ab6a9a8aba7c687a2559fa1a23fac9d0aa111
(cherry picked from commit
01d61e7881432a2c508fecbbab804d9c776abe1a)
Florin Coras [Fri, 30 Aug 2019 05:45:04 +0000 (22:45 -0700)]
vcl: initialize ctrl_mq in workers
Type: fix
Change-Id: I1b9c8b0f9292f039b941e18d8aca5d734d5f1e77
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
22ba3303d8e1ead33a4d032a532e38d255461c8a)
Christian E. Hopps [Fri, 27 Sep 2019 19:19:19 +0000 (15:19 -0400)]
ipsec: allow null cipher with dpdk esp
The NULL cipher is a (valid) non-AEAD choice for ESP encrypt path.
Allow it.
Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I6d8b66223a0ffb0952c2dd6fa898a8a2289fef7a
(cherry picked from commit
5a2426386d31c90e833c639332a80a8b60bfed2f)
Christian E. Hopps [Fri, 27 Sep 2019 19:24:37 +0000 (15:24 -0400)]
ipsec: fix memleaks in ikev2 openssl code
- Need to always free created contexts
- Always pair init with cleanup for older openssl API.
Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ie8840403bcac500c20085d57240401ad39d119f8
(cherry picked from commit
9a5aab34f51bc1e5458456888ba142ee1055e1f4)
Aloys Augustin [Tue, 24 Sep 2019 16:57:50 +0000 (18:57 +0200)]
udp: do not send received packets to error-drop
This tends to pollute the error counter.
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Change-Id: Idb628e767b074a5ee7e00d001bc88c378d7b8d0b
(cherry picked from commit
8fadb658a1b91a92f174fcf29a3620b644d8fe21)
Florin Coras [Tue, 24 Sep 2019 19:45:14 +0000 (12:45 -0700)]
session: fix cleanup in closing states
Type: fix
Change-Id: Iccc283bb98d3bb459a711ec2b74d6a32ad12903b
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
54c93cfc2556d9c6d2cf472f51d4c2866a556ef6)
Lijian.Zhang [Mon, 16 Sep 2019 08:22:36 +0000 (16:22 +0800)]
fib: fix some typos in fib/mtrie
Type: fix
Change-Id: I1af0e4a9bc23a3b6b6d3a74df093801ab6cae1f8
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
(cherry picked from commit
33af8c1ed89f15cf0601ee891e9603bef16f2c93)
Klement Sekera [Mon, 24 Jun 2019 11:52:49 +0000 (11:52 +0000)]
ip: refactor reassembly
this is a preparation step for introducing other reassembly types
Type: refactor
Change-Id: I197e299dbd729b00eead31667913b8ceff915d63
Signed-off-by: Klement Sekera <ksekera@cisco.com>
(cherry picked from commit
896c896a3c4ed563a270281ff8b50fd253f4833f)
Klement Sekera [Thu, 12 Sep 2019 09:01:06 +0000 (09:01 +0000)]
papi: truncate long logger messages
Dumping whole cli_inband output causes huge unformatted messages written
to logger, so truncate these to avoid that.
Type: fix
Change-Id: I59565a98e3595cbfe4971cc346e104cb198d8f24
Signed-off-by: Klement Sekera <ksekera@cisco.com>
(cherry picked from commit
5e2f84d2cf97a6efa89c1c4bbf80de6a8f03d2a8)
Damjan Marion [Tue, 24 Sep 2019 16:10:49 +0000 (18:10 +0200)]
vlib: add flag to explicitelly mark nodes which can init per-node packet trace
Type: feature
Change-Id: I913f08383ee1c24d610c3d2aac07cef402570e2c
Signed-off-by: Damjan Marion <damarion@cisco.com>
(cherry picked from commit
7ca5aaac10e95306f74ea4afd52110dd46aa0381)
Damjan Marion [Tue, 24 Sep 2019 15:45:49 +0000 (17:45 +0200)]
build: pass 'no-pci' to autgenerated config
Avoid aggresive hiijack of pci interfaces when 'make run' and
'make run-release' are used and there is no startup.conf present.
Type: feature
Change-Id: Id653b5f9ac3d2935a40299885e616960e75d4a95
Signed-off-by: Damjan Marion <damarion@cisco.com>
(cherry picked from commit
be7ef3b5c2ebe973405a364454884fc21d35de95)
Benoît Ganne [Fri, 6 Sep 2019 11:43:16 +0000 (13:43 +0200)]
gbp: fix contract rule handling
Fix a memory leak when removing old GBP contract rules and make sure a
GBP contract rule exists when matching the corresponding ACL rule.
Type: fix
Fixes:
13a08cc098
Change-Id: Iba67d573e69280ad998488a7a3d3462341c68ea4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
44ca60ecdba866160bebbc6c1eb983674819d429)
MathiasRaoul [Mon, 23 Sep 2019 11:48:49 +0000 (11:48 +0000)]
hsa: fix typo in vpp_echo for tx-buf
fix typo and allow use of Gb, Mb or Kb for tx/rx-buf sizes
Type: fix
Change-Id: I2cfd4c09d6b14dd5c744d942eea09ca9ddcc0f46
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
(cherry picked from commit
bb73ae7b14279a908991e19576a79b6d9a58a94d)
Dmitry Vakhrushev [Tue, 20 Aug 2019 18:44:51 +0000 (14:44 -0400)]
nat: fix update of outside fibs (output-feature)
NAT hasn't worked when NAT interfaces wasn't in
default VRF (fib_index = 0). This issue has been occurred with
interfaces with output-feature in endpoint-dependent mode.
Update VAT commands:
- update nat44_add_del_address_range
- add nat44_interface_add_del_output_feature
Ticket: VPP-1732
Type: fix
Change-Id: Iddea15dde4b948f159a0056d48c55bd917037fd1
Signed-off-by: Dmitry Vakhrushev <dmitry@netgate.com>
(cherry picked from commit
6c57a4a985a1e4a49d1aeaf2684166cf2e122cfb)
juraj.linkes [Thu, 8 Aug 2019 13:59:10 +0000 (15:59 +0200)]
ebuild: Add MAKE_PARALLEL_FLAGS to VPP build
Align with other packages.
Type: make
Change-Id: I3c8f5c6a349ce9d4e05f546945ae2d8dcf3b1b61
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
(cherry picked from commit
1c887d9362f6c819e7fcf5b3bdecbeb386c9152b)
Damjan Marion [Thu, 19 Sep 2019 16:43:42 +0000 (18:43 +0200)]
classify: remove includes from classifier header file
Type: refactor
Change-Id: I6f0af1c3078edce1c1b29a8b99c4a232d7084d33
Signed-off-by: Damjan Marion <damarion@cisco.com>
(cherry picked from commit
864d857c6c223be8ec11c588d65e8c5c2e211814)
Dave Wallace [Thu, 19 Sep 2019 20:38:44 +0000 (20:38 +0000)]
hsa: refactor vpp_echo failure handling
- Return unique value for each failure condition
- Last failure value returned
- All failures included in description
- Output failure value and description
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I72d5e7f660ad4765c468874421622607af6ae3d1
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit
0e402a98b20fbb7c5b715abd038c244c539bad36)
Florin Coras [Thu, 29 Aug 2019 19:03:17 +0000 (12:03 -0700)]
vcl: allow non-blocking connects
Type: feature
Change-Id: I55349f482ce6781337f747b2f0d2c0a027c3a675
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
57c88938f8a80e63e7307cacaca23b0ab3a51b6c)
Neale Ranns [Tue, 1 Oct 2019 16:49:53 +0000 (09:49 -0700)]
ip: mfib CLI 'via local' fix
Type: fix
Change-Id: I6fd7bb27b95a50d37424f65dc51e8b341f8b1b28
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
eacc8c5943e44d19b5a65a68db3ad5adf9e37495)
Florin Coras [Wed, 25 Sep 2019 14:28:34 +0000 (07:28 -0700)]
session: validate connection in session lookup del
Type: fix
Change-Id: I4e2617f99064c5a96e4debae8b68716ca129ee73
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
e1e7fb88e47b0ec99d32ea0391d969542960391a)
Florin Coras [Fri, 13 Sep 2019 01:36:44 +0000 (18:36 -0700)]
tcp: use sacks for timer based recovery
Type: feature
If available, reuse sack scoreboard in timer triggered retransmit to
minimize spurious retransmits.
Additional changes/refactoring:
- limited transmit updates
- add sacked rxt count to scoreboard
- prr pacing of fast retransmits
- startup pacing updates
- changed loss window to flight + mss
Change-Id: I057de6a9d6401698bd1031d5cf5cfbb62f2bdf61
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
36ebcfffbc7ab0e83b4bb8dfaec16bf16cafb954)
Matthew Smith [Wed, 18 Sep 2019 18:51:46 +0000 (13:51 -0500)]
ip: fix memory leak in ip_dump handler
Type: fix
A vector allocated by vl_api_ip_dump_t_handler() was not being
freed.
Change-Id: I13425b8087e60df60c6aaa1230aa7e6d60b101a8
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
(cherry picked from commit
6d5f6592559bc0db4294c53236177d4e35e603c6)
Florin Coras [Tue, 24 Sep 2019 14:18:51 +0000 (07:18 -0700)]
session: avoid transport cleanup if previously deleted
Type: fix
Change-Id: I485d38c7d9473e2ad1cbd8e17a788ec8d29ab001
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
cac31a4a23241eb94e6982c049c0feb8b180c868)
Dave Wallace [Tue, 17 Sep 2019 18:38:59 +0000 (18:38 +0000)]
hsa: fix vpp_echo stats output
- Output stats when there are missing timing events
- Add missing timing event status to the stats output
Type: fix
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I10a8db6db9568b98379df544d0098f9722a44867
(cherry picked from commit
789ac9de0674f3e5e064734dd81314716ed8cd1a)
Florin Coras [Wed, 21 Aug 2019 23:20:44 +0000 (16:20 -0700)]
session: move ctrl messages from bapi to mq
Type:refactor
Moves connect, disconnect, bind, unbind and app detach to message
queue from binary api. Simplifies app/vcl interaction with the session
layer since all session control messages are now handled over the mq.
Add/del segment messages require internal C api changes which affect all
builtin applications. They'll be moved in a different patch and might
not be back portable to 19.08.
Change-Id: I93f6d18e551b024effa75d47f5ff25f23ba8aff5
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
458089bbad9cf5bef6cf8119f23fc44e66b36ad3)
Florin Coras [Mon, 23 Sep 2019 02:05:50 +0000 (19:05 -0700)]
tcp: fix unformat cwnd multiplier
Type: fix
Change-Id: Ife4e650cb8b16f84ca6f77ba7b1d17a0f452fc3f
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
1df833e6deecaa1ca68d6e98af7fb109fc0ca18a)
Benoît Ganne [Thu, 18 Jul 2019 15:34:28 +0000 (17:34 +0200)]
fib: do not dump no-longer valid adjacencies
In some cases, we can refer to no-longer adjacencies (eg. in traces). Do
not dump them in this case as they are probably incorrect (memory can be
reused).
Type: fix
Change-Id: Ib653ba066bb6595ec6ec37d313a3124bce0eeed3
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
138c37af5291e2045075052a4db036be03be4a85)
Benoît Ganne [Tue, 3 Sep 2019 16:17:38 +0000 (18:17 +0200)]
gbp: remove loopback interfaces between tests
Type: fix
Change-Id: I440f25b95b23b717518d101a1327ecf16d6ba39a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit
d51880c5de3a1b22d9ac510305bdfe98fa12e51c)
Nathan Skrzypczak [Fri, 13 Sep 2019 15:14:57 +0000 (17:14 +0200)]
session: fix msg freeing on error
Type: fix
Change-Id: I0807f84737d5e98e69e9ed27a1de6813b2ddd138
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
(cherry picked from commit
1afa7afffad6e296a97556aa4c9482f4cd544074)
Florin Coras [Thu, 12 Sep 2019 06:22:29 +0000 (23:22 -0700)]
tcp: refactor congestion event handling
Type: refactor
Minor cleanup to congestion event handling.
Change-Id: I7179ff9e21c1853382ba814652c9024f3e5b8a37
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
afef8bf22369d10ab8107a63b1e3529ed7dd6c8d)
Florin Coras [Thu, 19 Sep 2019 15:19:44 +0000 (08:19 -0700)]
session: builtin app rx notifications regardless of state
Type: feature
Provide rx notifications to builtin apps even after disconnect.
Consequently tcp connections that are past FIN_WAIT_1 can still receive
rx notifications.
This is not currently supported for external applications.
Change-Id: I529da7f7120b0e7c62c5026ac71f86d6b5196cf4
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit
5c29029ef029edc96340f9eecf7fe24821f2ef2a)
Filip Tehlar [Wed, 18 Sep 2019 22:43:44 +0000 (22:43 +0000)]
ikev2: add support for GCM cipher
Type: feature
Change-Id: Ic703015b55f0ae947e5e44b10b74b3c79efe7da6
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
(cherry picked from commit
de2dd6c35653225525b071d4dc748451e0d6bd7d)
Andrew Yourtchenko [Mon, 9 Sep 2019 11:14:59 +0000 (11:14 +0000)]
tests: split up the long running IPSec tests into separate classes
Type: test
Change-Id: Ieeae7f1653f5f2e8e49f258871b389ef8954c90b
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
fbc388986e3f38aaedff87b843137be81b7d4f91)