Mohsin Kazmi [Thu, 15 Jul 2021 14:20:57 +0000 (14:20 +0000)]
vppinfra: fix the vector funcs test for march variants
Type: fix
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I4208c2622817eb51a4b192cf420f9f1b5f193eef
Neale Ranns [Thu, 15 Jul 2021 08:11:38 +0000 (08:11 +0000)]
acl: Fix the CLI to accept IPv6 prefixes
Type: fix
DBGvpp# set acl-plugin acl src 1::1/128 dst 2::/64
DBGvpp# sh acl-plugin acl
acl-index 0 count 1 tag {cli}
0: ipv4 permit src 1.1.1.1/32 dst 1.1.1.2/32 proto 0 sport 0-65535 dport 0-65535
acl-index 1 count 1 tag {cli}
0: ipv6 permit src 1::1/128 dst 2::/64 proto 0 sport 0-65535 dport 0-65535
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ibb8e20dd4ec2792f423a61eefe7398175e45a577
Sergio Gonzalez Monroy [Wed, 14 Jul 2021 13:01:47 +0000 (15:01 +0200)]
linux-cp: clear all db entries when deleting a pair
Type: fix
Change-Id: I5677cbb183b10c974a3a2e569d1a7a525a7eb45d
Signed-off-by: Sergio Gonzalez Monroy <sgmonroy@gmail.com>
Damjan Marion [Thu, 15 Jul 2021 09:54:41 +0000 (11:54 +0200)]
misc: replace CLIB_PREFETCH with clib_prefetch_{load,store}
Type: refactor
Change-Id: Id10cbf52e8f2dd809080a228d8fa282308be84ac
Signed-off-by: Damjan Marion <damarion@cisco.com>
Filip Varga [Tue, 29 Jun 2021 10:10:01 +0000 (12:10 +0200)]
nat: nat44-ed sm fix
Fixing nat44-ed identity map in2out communication.
TCP packets would get dropped because of the order
of testing TCP state.
Type: fix
Change-Id: Ib11e7e75c66945224fecc0bb311733672e315c7d
Signed-off-by: Filip Varga <fivarga@cisco.com>
Filip Varga [Mon, 21 Jun 2021 10:59:41 +0000 (12:59 +0200)]
nat: adding support for icmp-error msg
Extending tests.
Type: test
Change-Id: I98cc1d214ead10ac53fed34a1492d9b5f37975a2
Signed-off-by: Filip Varga <fivarga@cisco.com>
Damjan Marion [Wed, 14 Jul 2021 10:25:34 +0000 (12:25 +0200)]
vppinfra: remove old and unused vector macros and inlines
Type: refactor
Change-Id: Ic504bcfca6e7fbd85e858c3bc7a4f5e72d931789
Signed-off-by: Damjan Marion <damarion@cisco.com>
Xiaoming Jiang [Tue, 13 Jul 2021 03:55:59 +0000 (03:55 +0000)]
api: fix memory error in multi-thread environment
When reading vm->pending_rpc_requests in main thread,
the content may be changed by other workers.
Type: fix
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
Change-Id: I27e9d357b5ecec0f97cd8b950019b35f72fc5f76
liuyacan [Wed, 14 Jul 2021 07:53:01 +0000 (15:53 +0800)]
vcl:fix segfault when unshare NO_MQ session
Session in LISTEN_NO_MQ state has no vpp_evt_q.This
would cause a segfault when vcl try to send msg to
vpp.
Type: fix
Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: I0d21831dbed148cd1b0ca7c083aeeef9e813ef2f
Filip Varga [Tue, 29 Jun 2021 12:28:21 +0000 (14:28 +0200)]
nat: refactoring NAT44ED cfg functions
Refactored & fixed NAT44ED configuration
functions used for handling interfaces and
nodes.
Type: refactor
Signed-off-by: Filip Varga <fivarga@cisco.com>
Change-Id: I6fbbb7f0fe35d572675997745d53290152987424
Damjan Marion [Wed, 14 Jul 2021 10:57:53 +0000 (12:57 +0200)]
ip: fix check_adj_port_range_x1
Type: fix
Change-Id: I776bf797e07bb3cfd0510a4c09d8182edfa193bd
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 14 Jul 2021 10:01:17 +0000 (12:01 +0200)]
classify: cheaper way to check if all elements are zero
Type: improvement
Change-Id: I5f4517c65c37c5d73fcd608dc29dfb1d25d4cd8d
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 14 Jul 2021 09:30:00 +0000 (11:30 +0200)]
ip: improve check_adj_port_range_x1
Type: improvement
Change-Id: I8337f81fdcd196fcb0e61f8129fec322e9a1e8f1
Signed-off-by: Damjan Marion <damarion@cisco.com>
Lijian.Zhang [Fri, 25 Jun 2021 15:42:21 +0000 (23:42 +0800)]
vppinfra: fix saturate add/sub NEON wrappers
Fix the saturate add/sub wrappers in vector_neon.h by using the correct
intrinsics.
Type: fix
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Reviewed-by: Tianyu Li <Tianyu.Li@arm.com>
Change-Id: I38a85633948472d4bdb1c199a806633d3070013f
Damjan Marion [Tue, 13 Jul 2021 19:12:41 +0000 (21:12 +0200)]
vppinfra: put each vector function into own file
Type: refactor
Change-Id: I2dd9a18497992ac7e2686c14f5d17eccccda0cda
Signed-off-by: Damjan Marion <damarion@cisco.com>
Filip Tehlar [Thu, 8 Jul 2021 18:44:19 +0000 (18:44 +0000)]
misc: remove vnet_all_api_h and vnet_msg_enum
These file are no longer needed
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I34f8e0b7e17d9e8c06dcd6c5ffe51aa273cdec07
Neale Ranns [Fri, 9 Jul 2021 13:03:52 +0000 (13:03 +0000)]
fib: Set the GLEAN flag on attached export routes so that the SAS works
correctly.
Type: fix
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I4bc2eb394a8f9d01c5a12de2ce963c22209d5439
Florin Coras [Wed, 7 Jul 2021 04:07:50 +0000 (21:07 -0700)]
tcp session: next node config on connects
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ief06b1509d31b55efc8d1436b6ff9e01c6037a32
Miklos Tirpak [Thu, 1 Jul 2021 15:26:34 +0000 (17:26 +0200)]
mss_clamp: coverity test fix
Silence the coverity test with setting the interface index
in a variable before the boundary check.
Type: fix
Change-Id: I9bd6db08bfef93142581dada0b6a7d78b7de91e7
Signed-off-by: Miklos Tirpak <miklos.tirpak@gmail.com>
Bin Zhou (bzhou2) [Mon, 21 Jun 2021 15:09:30 +0000 (11:09 -0400)]
misc: fix init order to avoid startup warnings
Put plugin init order inside plugin instead of in vnet
Type: improvement
Signed-off-by: Bin Zhou (bzhou2) <bzhou2@cisco.com>
Change-Id: Icbacdb3f1cb4ac9d74e3f78458e8bc333793b4d6
Robert Shearman [Tue, 6 Jul 2021 08:59:06 +0000 (09:59 +0100)]
dpdk: add base-virtaddr config option
Type: improvement
Allow the use of the base-virtaddr config option to be passed through
to DPDK. This is useful to allow use of devices with an IOMMU in
nested VMs without resorting to PA IOVA mode.
Signed-off-by: Robert Shearman <robertshearman@gmail.com>
Change-Id: I32b6513377e6d20bf155e12c45f902d51ea982c4
chenqijun [Mon, 12 Jul 2021 02:51:05 +0000 (10:51 +0800)]
vppinfra: fix SIGSEGV in clib_mem_vm_unmap
while one mprotect PROT_NONE on hdr->next or hdr->prev,
the other one with the PROT_NONE is unmap at the same time,
cause SIGSEGV.
Type: fix
Signed-off-by: arikachen <eaglesora@gmail.com>
Change-Id: I21c0497da140c9654b566e47f767a90346715ed8
Ole Troan [Tue, 4 May 2021 10:45:57 +0000 (12:45 +0200)]
papi: remove shared memory transport
This patch removes the papi transport shared memory plugin.
It also removes any dependency on CFFI.
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ia81701c0dc506871e511495d837e41420e1fdf72
Signed-off-by: Ole Troan <ot@cisco.com>
Filip Tehlar [Sat, 26 Jun 2021 22:12:08 +0000 (22:12 +0000)]
session: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: Iacc58d27ac51c8a1c571087f98297e046b3477c2
Mohsin Kazmi [Fri, 9 Jul 2021 12:19:37 +0000 (14:19 +0200)]
gso: add ipsec tunnel tests
Type: test
Change-Id: I831bc8c21f8ce869054eafcb14542508039c1b82
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Florin Coras [Thu, 8 Jul 2021 15:25:09 +0000 (08:25 -0700)]
session: allow listen in any fib if default namespace
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If0712f01bdd6f2fc892bcbe4e2cee28affd02520
Steven Luong [Thu, 17 Jun 2021 15:22:50 +0000 (08:22 -0700)]
interface: unable to to assign tx queue to last worker thread
Using the cli "set interface tx-queue", it is not possible to assign
tx queue to the last worker thread.
The reason is that vdm->first_worker_thread_index is 1. Adding that
to clib_bitmap_last_set (bitmap) exceeds vdm->last_worker_thread_index
when the CLI specifies the last worker thread.
Also make the threads argument optional to enable user to unbind a queue
from any thread.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I796259c20f571289c8f5a97b9418caf452d0ab3d
Neale Ranns [Thu, 20 May 2021 16:09:40 +0000 (16:09 +0000)]
tap: Set the MTU on the TUN deivce
Type: fix
For a TAP device the MTU is set via the ethernet_register for TUN we
need to do it explicitly (like we do for other tunnel types).
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ie6a13c795acb35b53f8d99b05c70c3e73a7b428e
Florin Coras [Sat, 3 Jul 2021 01:10:20 +0000 (18:10 -0700)]
tcp: use tcp output for half open connections
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I05be39671a9ed0688d4e006f0f9354aa6560a41b
Florin Coras [Tue, 6 Jul 2021 15:25:36 +0000 (08:25 -0700)]
tcp: use main thread pool for half-opens
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I4b3427b966f9ff1ba8895fed7db662d56650f3f5
Benoît Ganne [Tue, 6 Jul 2021 14:12:06 +0000 (16:12 +0200)]
l3xc: reset dpo on delete
When removing a l3xc path we must release the corresponding dpo.
Type: fix
Change-Id: Ib6309797cb11374264c786e064f262ad13c6f0a1
Signed-off-by: Benoît Ganne <bganne@cisco.com>
wanghanlin [Tue, 6 Jul 2021 09:18:29 +0000 (17:18 +0800)]
vcl: fix packetdrill test error
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: I36d9affa5ee7160e95ee0ed463595bef752bbe9a
wanghanlin [Tue, 6 Jul 2021 07:57:55 +0000 (15:57 +0800)]
vcl: print current app state for timeout
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: Id701b1a1bee4e41b76d324ea05beb07ca57f825c
wanghanlin [Tue, 6 Jul 2021 07:01:48 +0000 (15:01 +0800)]
vcl: fix return value check for ldp_fd_to_vlsh
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: Iaad4022e84f4979016bb46c2ff5cfc5d43d6ff50
Rajaselvam [Wed, 30 Jun 2021 05:50:20 +0000 (11:20 +0530)]
vrrp: Fix for test-all testcases failure.
Failure due to the method vrrp_adv_packet scope and self reference.
Type: fix
Signed-off-by: rajaselvam <rajaselvam@gmail.com>
Change-Id: I4ec14ea37928142651eb08fcc5736bc9c24ab062
Damjan Marion [Fri, 2 Jul 2021 14:04:26 +0000 (16:04 +0200)]
build: remove unused files and sections
Type: make
Change-Id: Ia1d8c53c5fb02f7e5c86efab6e6ccd0fdb16bc96
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Wed, 18 Nov 2020 11:13:27 +0000 (11:13 +0000)]
ipsec: ADD/update IPSec documentation
Type: docs
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ica576e13953a3c720a7c093af649d1dd380cc2c0
Filip Tehlar [Sun, 27 Jun 2021 00:18:57 +0000 (00:18 +0000)]
interface: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I189bfcca2d5fa1f37d05a72c92d04bf260343043
Filip Tehlar [Mon, 28 Jun 2021 00:52:00 +0000 (00:52 +0000)]
sr: do not use vnet_all_api.h
.. as it is going to be removed.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: Id3a4a4ea1e1b7361d43735bfa5470c28fc65209f
Tianyu Li [Wed, 23 Jun 2021 07:35:03 +0000 (07:35 +0000)]
vlib: fix buffer pool alignment size
Alignment size should be CLIB_CACHE_LINE_BYTES(64)
instead of CLIB_LOG2_CACHE_LINE_BYTES(6)
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: If2d5ae324093be64454377866297f5e76ccddc93
Benoît Ganne [Mon, 14 Jun 2021 15:19:46 +0000 (17:19 +0200)]
crypto: fix sw async crypto with chained buffers
When a buffer in the chain comes with a negative current_data offset,
the conversion to sgl will skip it because of resetting offset to 0.
Moreover, crypto_start_offset is relative to the 1st buffer data pointer
so we should not check it against subsequent buffers anyway.
Type: fix
Change-Id: Id177a90bfda242a5372c7e8836cf6668e98c780e
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Neale Ranns [Wed, 23 Jun 2021 11:58:48 +0000 (11:58 +0000)]
misc: Don't IPv[46] enable local0, it doesn't receive packets.
Type: improvement
local0 exists just to burn sw_if_index=0 so we catch common API errors.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I2901bb7d36d4c512e6698134a807bf9516ee05db
Steven Luong [Thu, 17 Jun 2021 15:50:32 +0000 (08:50 -0700)]
vmxnet3: support manual thread assignment to tx queue
Thread assignment to tx queue has always been automatic and there
was no way to modify it. With this patch, it is now possible to use
the cli "set interface tx-queue" to change the thread assignment to
tx queue for vmxnet3 interface, thanks to the new tx infra.
Type: feature
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I1544e3557f70251d4bd423cc3d9f28ee1d44db4a
Filip Tehlar [Wed, 23 Jun 2021 14:38:38 +0000 (14:38 +0000)]
ip: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I4b6d881571c158b7a69a78b9680732d090c4f8b5
Benoît Ganne [Tue, 22 Jun 2021 13:46:33 +0000 (15:46 +0200)]
memif: fix tx desc length for chained buffers in copy mode
When enqueuing chained buffer, we must update the descriptor length for
each fragment descriptor in addition to the last.
Type: fix
Change-Id: I9bc95fe557a049eeea4abd41c695153632d52a52
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Fri, 25 Jun 2021 15:49:01 +0000 (17:49 +0200)]
rdma: fix chained buffer tx path in dv mode
When switching to the direct verb chain buffer tx path, we must account
for all remaining packets, including the packets that would wrapped
around.
Previously we were using the 'n' counter but ignoring the 'n_wrap'
counter: if some packets would have wrapped around in the default path,
it would be ignored by the chained buffer tx path.
Compute the correct number of remaining packets based on the old and
current txq tail instead.
Also simplify the chained tx function parameters.
Type: fix
Change-Id: If12b41a8f143fda80290342e2904792f7501c559
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Wed, 23 Jun 2021 11:45:25 +0000 (13:45 +0200)]
memif: fix chain buffer length in zero-copy mode
The total_length_not_including_first_buffer field must be reset before
being updated otherwise it will quicly grows as stale values are reused.
Type: fix
Change-Id: Ic48c0822660998b0dfc0b5fdeadae6071b2d03f7
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Wed, 30 Jun 2021 14:54:29 +0000 (07:54 -0700)]
vcl: coverity fixes
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I290e4b0dff6afe7ce755074f3aaaf945dbbf3e09
Neale Ranns [Thu, 24 Jun 2021 15:41:03 +0000 (15:41 +0000)]
ipsec: Derive the TUNNEL_V6 flag from the configured address types
Type: improvement
There's no need for the user to set the TUNNEL_V6 flag, it can be
derived from the tunnel's address type.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I073073dc970b8a3f2b2645bc697fc00db1adbb47
Florin Coras [Tue, 29 Jun 2021 20:27:45 +0000 (13:27 -0700)]
session: free ctrl event data on connect rpc
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I56c4682aef59ed0e69073f9001341c425e65bd48
Neale Ranns [Mon, 28 Jun 2021 13:31:28 +0000 (13:31 +0000)]
ipsec: Fix setting the hi-sequence number for decrypt
Type: fix
two problems;
1 - just because anti-reply is not enabled doesn't mean the high sequence
number should not be used.
- fix, there needs to be some means to detect a wrapped packet, so we
use a window size of 2^30.
2 - The SA object was used as a scratch pad for the high-sequence
number used during decryption. That means that once the batch has been
processed the high-sequence number used is lost. This means it is not
possible to distinguish this case:
if (seq < IPSEC_SA_ANTI_REPLAY_WINDOW_LOWER_BOUND (tl))
{
...
if (post_decrypt)
{
if (hi_seq_used == sa->seq_hi)
/* the high sequence number used to succesfully decrypt this
* packet is the same as the last-sequnence number of the SA.
* that means this packet did not cause a wrap.
* this packet is thus out of window and should be dropped */
return 1;
else
/* The packet decrypted with a different high sequence number
* to the SA, that means it is the wrap packet and should be
* accepted */
return 0;
}
- fix: don't use the SA as a scratch pad, use the 'packet_data' - the
same place that is used as the scratch pad for the low sequence number.
other consequences:
- An SA doesn't have seq and last_seq, it has only seq; the sequence
numnber of the last packet tx'd or rx'd.
- there's 64bits of space available on the SA's first cache line. move
the AES CTR mode IV there.
- test the ESN/AR combinations to catch the bugs this fixes. This
doubles the amount of tests, but without AR on they only run for 2
seconds. In the AR tests, the time taken to wait for packets that won't
arrive is dropped from 1 to 0.2 seconds thus reducing the runtime of
these tests from 10-15 to about 5 sceonds.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Iaac78905289a272dc01930d70decd8109cf5e7a5
liuyacan [Tue, 29 Jun 2021 08:45:11 +0000 (16:45 +0800)]
tcp: add ACK flag to RST packet
According to RFC 793, the ACK control bit is always sent once
the connection is established.
Type: fix
Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: Id0fe19114a0cc468dbce4c0938b345c2ac339e73
Florin Coras [Wed, 23 Jun 2021 03:04:46 +0000 (20:04 -0700)]
vcl: improvements to epoll lt
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If585b9c48f67599c56a8c4b4a5139375bc4287f6
Zachary Leaf [Mon, 7 Jun 2021 08:01:07 +0000 (03:01 -0500)]
ipsec: increment SPD policy counters for bypass and discard actions in ipsec4_input_node
ipsec_spd_policy_counters are incremented only for matched inbound
PROTECT actions (:273 and :370). BYPASS + DISCARD actions also have
SPD policy counters that should be incremented on match.
This fix increments the counters for inbound BYPASS and DISCARD actions.
Type: fix
Signed-off-by: Zachary Leaf <zachary.leaf@arm.com>
Change-Id: Iac3c6d344be25ba5326e1ed45115ca299dee5f49
wanghanlin [Tue, 29 Jun 2021 08:01:55 +0000 (16:01 +0800)]
vcl: Don't use app_socket_api to notify VPP in parent when child exited
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: Icd2fc3cc2d0a0a6060abfb262044cf9e09ab4ba2
wanghanlin [Fri, 25 Jun 2021 09:40:13 +0000 (17:40 +0800)]
vcl: Don't memset events to optimize CPU usage
In stress test case, memset may consume a lot of CPU because
vls_epoll_wait is called very frequently.
Type: improvement
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: I9b4e1d6e1c4d7217cf0b2529d8efed792dea7b40
Florin Coras [Tue, 29 Jun 2021 02:13:29 +0000 (19:13 -0700)]
vcl: epoll fix postponed evt handling
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I3d208f8ef4638e7557929f4b2bca4d640af85baa
Neale Ranns [Thu, 24 Jun 2021 14:57:56 +0000 (14:57 +0000)]
ipsec: Split the SA add_del API into an separate add and del
Type: improvement
the rationale being that the del only requires the SA's ID, so it's a
bit mean to require the client to fill out all the other information as
well.
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ibbc20405e74d6a0e1a3797465ead5271f15888e4
Neale Ranns [Fri, 25 Jun 2021 13:30:50 +0000 (13:30 +0000)]
ipsec: Enable the extended Sequence Number IPSec tests for GCM
Type: test
Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: Ie691b1c8841f5e195525bfff990f12ab918ba394
Jon Loeliger [Fri, 25 Jun 2021 15:24:57 +0000 (11:24 -0400)]
vrrp: prevent segfault in multicast join due to missing LL Addr
If an IPv6 Link Layer Address is missing from an interface,
treat it as a down interface. While this fails to send a
VRRP multicast group join, it also prevents a seg fault.
Type: fix
Fixes:
39e9428b90bc74d1bb15fc17759c8ef6ad712418
Signed-off-by: Jon Loeliger <jdl@netgate.com>
Change-Id: Iebf69bb30604a96de6587655eb872aa818158a56
Arthur de Kerhor [Fri, 25 Jun 2021 16:03:24 +0000 (18:03 +0200)]
stats: reverts part of a fix on Python client
Puts return statements back inside code blocks under the lock
Type: fix
Change-Id: I76d426f336200035026b92bcb0ffe2b472a3142d
Signed-off-by: Arthur de Kerhor <arthurdekerhor@gmail.com>
Beno�t Ganne [Fri, 25 Jun 2021 15:45:05 +0000 (15:45 +0000)]
stats: revert "add a retry mechanism in a symlink test"
This reverts commit
d70777aa60a87001f323f3b226d7e5cee2cd23d8.
Reason for revert: wrong fix
Type: fix
Change-Id: Ibff1b977eae8d2cc85888165ebf83c42eb661698
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Arthur de Kerhor [Thu, 24 Jun 2021 17:39:44 +0000 (19:39 +0200)]
stats: fix race conditions in vpp-api stats client
Type: fix
Signed-off-by: Arthur de Kerhor <arthurdekerhor@gmail.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: Ie5c197f6ec0d41d5e405b22662701d83ad94d29e
Xiaoming Jiang [Wed, 23 Jun 2021 09:07:57 +0000 (09:07 +0000)]
session: fix session formated str output truncated in cli
Type: fix
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
Change-Id: I2c2b739a5aa246bbf53d6663efd403c3aee9dddd
Alexander Chernavin [Thu, 24 Jun 2021 14:46:19 +0000 (10:46 -0400)]
linux-cp: stop managing adjacencies for tunnels
Type: fix
Outbound packets which arrive on tun/L3 interfaces use a default
adjacency for the interface & address family from the corresponding
interface pair. However, there are entries in the linux-cp adj table
that are created for them. Managing these entries might cause a
segfault because the rewrite data might exceed the reserved space for
it of 28 bytes in the linux-cp adj key (e.g. in case of GRE IPv6).
With this change, stop creating adjacencies for tun/L3 interfaces in
the linux-cp adj table and delegating them.
Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
Change-Id: I4bcd685860053ab87c65064c182e3ed53fd4fae9
Tianyu Li [Thu, 17 Jun 2021 07:08:32 +0000 (07:08 +0000)]
svm: fix asan check failed @svm_map_region on arm
==283032==AddressSanitizer CHECK failed: compiler-rt/lib/asan/asan_mapping.h:366
"((AddrIsInMem(p))) != (0)" (0x0, 0x0)
#0 0x49c128 in __asan::AsanCheckFailed
#1 0x4ae8dc in __sanitizer::CheckFailed
#2 0x495dec in __asan::ShadowSegmentEndpoint::ShadowSegmentEndpoint
#3 0x495e48 in __asan_unpoison_memory_region
#4 0xfffff4e851f8 in svm_map_region /home/vpp/src/svm/svm.c:611:7
#5 0xfffff4e86d9c in svm_region_init_internal /home/vpp/src/svm/svm.c:797:8
#6 0xfffff4e87ce4 in svm_region_init_args /home/vpp/src/svm/svm.c:880:3
#7 0xfffff7f30d30 in vlibmemory_init /home/vpp/src/vlibmemory/memory_api.c:974:3
#8 0xfffff4fd5368 in vlib_main /home/vpp/src/vlib/main.c:1986:16
svm_global_region_base_va 0x200000000000 is not in the aarch64 mapping range,
leading check failure and vpp cannot start.
aarch64 asan mapping
|| `[0x201000000000, 0xffffffffffff]` || HighMem ||
|| `[0x041200000000, 0x200fffffffff]` || HighShadow ||
|| `[0x001200000000, 0x0411ffffffff]` || ShadowGap ||
|| `[0x001000000000, 0x0011ffffffff]` || LowShadow ||
|| `[0x000000000000, 0x000fffffffff]` || LowMem ||
x86 asan mapping
|| `[0x10007fff8000, 0x7fffffffffff]` || HighMem ||
|| `[0x02008fff7000, 0x10007fff7fff]` || HighShadow ||
|| `[0x00008fff7000, 0x02008fff6fff]` || ShadowGap ||
|| `[0x00007fff8000, 0x00008fff6fff]` || LowShadow ||
|| `[0x000000000000, 0x00007fff7fff]` || LowMem ||
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: I55ddbdcd361d66d4cfaf6459b2fa20fd8b64af37
liuyacan [Thu, 24 Jun 2021 12:39:02 +0000 (20:39 +0800)]
vcl: fix vcl_session_write_ready when connecting
Applications like curl will poll the fd after a non-blocking
connect, so we need to avoid returning the wrong event.
Type: fix
Signed-off-by: liuyacan <liuyacan@corp.netease.com>
Change-Id: I7ea146fc954fda631b3d88b46bb80adfbcdf137c
Filip Tehlar [Tue, 22 Jun 2021 21:20:29 +0000 (21:20 +0000)]
l2: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I7b84767e75d5f8310ec071036a5780fa4530f79f
Matthew Smith [Tue, 22 Jun 2021 14:36:50 +0000 (09:36 -0500)]
linux-cp: add callbacks for pair management
Type: improvement
Allow callbacks to be registered which will be called when an
interface pair is added or deleted.
Change-Id: I1c413ac2ada802021f9e56e2f878ce67e5eda2f5
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Filip Tehlar [Wed, 23 Jun 2021 00:23:05 +0000 (00:23 +0000)]
virtio: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I4f9316b16f16a48e2042aa17db596bfd181bd314
Jon Loeliger [Thu, 17 Jun 2021 21:30:49 +0000 (17:30 -0400)]
mss_clamp: iterate enabled direction as a vector, not pool
Type: fix
Fixes:
bf55e9931ce203049385fbf55dde291ead556679
Signed-off-by: Jon Loeliger <jdl@netgate.com>
Change-Id: I5410a7a5a8cdc1d41abcc42fe5b42e6e2991dc06
Klement Sekera [Tue, 22 Jun 2021 13:56:36 +0000 (15:56 +0200)]
nat: ICMP handling fixes
If ICMP comes from a router on path, source address must not be
rewritten in o2i path to avoid getting wrong checksum.
Fix ICMP checksum computations.
Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I035debccf966d7dbd63c364cb1e43380d641f708
Filip Tehlar [Tue, 22 Jun 2021 22:01:19 +0000 (22:01 +0000)]
mpls: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I148022278a792b3687402b6915fe6fb513858a2a
Filip Tehlar [Tue, 22 Jun 2021 22:22:58 +0000 (22:22 +0000)]
span: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I7ec4bbb21a079c6f6adfb4f954054b2b07bf19c5
Filip Tehlar [Tue, 22 Jun 2021 22:33:02 +0000 (22:33 +0000)]
syslog: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I0971f12b7b82d5134d06ed0539d41624429c992b
Filip Tehlar [Tue, 22 Jun 2021 20:39:03 +0000 (20:39 +0000)]
tcp: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I3c06e9cb3fabdcdce9c17e93cfedfd771295f589
Florin Coras [Tue, 22 Jun 2021 21:20:39 +0000 (14:20 -0700)]
session: avoid reordering unlisten and connect msg
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ibe32f7965f8cf457c39845713b029c8a4647ee55
Filip Tehlar [Tue, 22 Jun 2021 12:18:17 +0000 (12:18 +0000)]
virtio: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I047310b8c9fcc51dcfb187710ff59b7895abe217
Filip Tehlar [Tue, 22 Jun 2021 14:10:41 +0000 (14:10 +0000)]
misc: punt: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I13dae61ddb7150c7fe9a7fd0eae73055ff3f2816
Matthew Smith [Wed, 9 Jun 2021 12:52:11 +0000 (07:52 -0500)]
dpdk: enable igc devices
Type: improvement
Set port type and supported flow actions on 2.5G Intel NICs which are
managed by the igc PMD.
Change-Id: Id144eaa158e24a3f10effb6b517d1c62fba0d2e8
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Filip Tehlar [Tue, 22 Jun 2021 11:47:09 +0000 (11:47 +0000)]
devices: af_packet api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: Ic7979755494a2fd23b9fa3d74e14f6b9ea0a46d0
Filip Tehlar [Tue, 22 Jun 2021 13:55:13 +0000 (13:55 +0000)]
qos: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I39505763371c98b75ff7b697dacd3eeb0d41d40a
Benoît Ganne [Tue, 22 Jun 2021 09:58:27 +0000 (11:58 +0200)]
api: asan: use vec_set_len() so ASan can keep track of buffer len
ASan poison/unpoison vectors based on the vector length, but _vec_len()
bypass ASan annotations, contrary to vec_set_len().
Type: fix
Change-Id: I5265a5adcddef1aa11c77e0c3827346b1a66c306
Signed-off-by: Benoît Ganne <bganne@cisco.com>
wanghanlin [Tue, 22 Jun 2021 09:34:08 +0000 (17:34 +0800)]
vcl: validate vep handle when copying sessions on fork
When copying sessions from parent on fork, we should validate vep handle
in order to EPOLL_CTL_DEL in vcl_session_cleanup correctly when child
exit.
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: I7696ecd898460c9a296d2800e46c7140e2218ed7
wanghanlin [Wed, 12 May 2021 09:00:29 +0000 (17:00 +0800)]
vcl: move child wrk cleanup from sighandler to vls_epoll_wait
Main process may enter sighandler with a lock, such as lock in localtime
or in mspace_free, and child wrk cleanup may try to get such locks and
cause deadlock.
The patch move cleanup to vls_epoll_wait to wait app's next call.
Type: fix
Signed-off-by: wanghanlin <wanghanlin@corp.netease.com>
Change-Id: I9b208038a0f49b0ace44684189234aeac9d94730
Filip Tehlar [Tue, 22 Jun 2021 12:03:55 +0000 (12:03 +0000)]
devices: tapv2 api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I0a2c1cbbe798ddf9d08da78bf0b458a0f54fa13a
Filip Tehlar [Tue, 22 Jun 2021 13:00:40 +0000 (13:00 +0000)]
sr: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I0bdf870e2e9b0ebc11a3ce252fbd0667a83de4e6
Filip Tehlar [Tue, 22 Jun 2021 11:28:25 +0000 (11:28 +0000)]
devices: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I03f51393a92bae45608d9fc9f53164f3b0add3cd
Filip Tehlar [Tue, 22 Jun 2021 09:24:06 +0000 (09:24 +0000)]
bonding: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I1de45c4db57444d2d2c9fb91b8a66a4f01be699b
Klement Sekera [Mon, 21 Jun 2021 14:04:40 +0000 (16:04 +0200)]
nat: don't drop packet with ttl=1 if output feature
TTL was already decremented in ip4-rewrite so it's okay if it's 1.
Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I587dc343737c15247eb62837a06d5e44c0d11acc
Filip Tehlar [Tue, 22 Jun 2021 08:21:31 +0000 (08:21 +0000)]
ipsec: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I0db7343e907524af5adb2f4771b45712927d5833
Filip Tehlar [Mon, 21 Jun 2021 13:45:44 +0000 (13:45 +0000)]
ethernet: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: Iacaefbf04834f000a14f151c4b848f280ac46d63
Filip Tehlar [Tue, 22 Jun 2021 08:37:26 +0000 (08:37 +0000)]
policer: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I5dd30870443a22a7da65f6b5a6d3967991e2aceb
Filip Tehlar [Mon, 21 Jun 2021 13:21:59 +0000 (13:21 +0000)]
bfd: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I7a0a189ce635a4a74e63ac4cb133686b8b7ba53a
Arthur de Kerhor [Mon, 21 Jun 2021 13:35:01 +0000 (15:35 +0200)]
stats: add a retry mechanism in a symlink test
When creating a new node, a corresponding node symlink is created when
the nodes counters update. To be sure we are able to access this
symlink, a retry mechanism was added.
Type: fix
Signed-off-by: Arthur de Kerhor <arthurdekerhor@gmail.com>
Change-Id: Ieb08d8554b4fd13d01e79062b5f820b235be9a13
jiangxiaoming [Wed, 30 Dec 2020 07:25:15 +0000 (15:25 +0800)]
build: vpp-ext-deps rpm version check may fail if system language is not English
Type: fix
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
Change-Id: Ib691d8f66b0d6047d23a0bdc4f3d15e6380f31eb
Dave Barach [Mon, 21 Jun 2021 14:31:35 +0000 (10:31 -0400)]
vlib: fix coverity warning
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ib563e2c09d46cc26fb983ffde3d5fcb88166f6a5
Benoît Ganne [Wed, 9 Jun 2021 15:20:16 +0000 (17:20 +0200)]
vppinfra: asan: fix overflow support
In some part of VPP we are accessing memory past what was allocated for
efficiency when we know it is safe to do so. We need to tell ASan about
it so it does not complain.
The initial attempt was too simple and could not manage cases where the
poisoned memory was scattered. This new attempt is more robust as we
save and restore the full shadow state.
Note it will still not work properly if we poison/unpoison memory while
in an overflow context, but this should not be a big issue as overflow
should only be temporary.
Type: fix
Change-Id: I636f44eb59aa8455a4d13929a3791b56619af7b4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Filip Tehlar [Mon, 21 Jun 2021 13:01:24 +0000 (13:01 +0000)]
udp: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I0994241df94ad7536be323b9d7c48caf38cc4267
Filip Tehlar [Mon, 21 Jun 2021 12:43:35 +0000 (12:43 +0000)]
feature: api cleanup
Use autogenerated code.
Does not change API definitions.
Type: improvement
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Change-Id: I76be91715953c7cbe704961d1a56c48334656e19