Dave Barach [Thu, 11 Jun 2020 12:57:52 +0000 (08:57 -0400)]
ip: allocate ip4 mtrie pages in htlb memory
No change in default behavior. To use htlb pages for the ip4 mtrie,
use the "ip" command-line option "mtrie-hugetlb".
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I5497e426a47200edff2c7e15563ed6a42af12e7f
Filip Tehlar [Sat, 6 Jun 2020 01:19:31 +0000 (01:19 +0000)]
ikev2: don't add DH group in ESP transform proposals
Type: fix
Anouncing DH group in esp transform proposals will enable PFS which is
not suppored now. This fixes issue during rekey when using strongswan as
responder.
Change-Id: Ib9f586113ae0ab9dc67e6ceadff43f8aac463820
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Klement Sekera [Thu, 11 Jun 2020 10:35:52 +0000 (10:35 +0000)]
nat: properly scale out2in-ed hash on init
Type: fix
Fixes:
a1018c166a468f7692ab621c743503914266f508
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I86592f73a60fd146d3764e474f975881e940c244
Klement Sekera [Fri, 27 Mar 2020 10:54:53 +0000 (11:54 +0100)]
nat: simplify bihash buckets/mem config
Derive reasonable values from max translations/max users.
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I41a96ab63ab138b4160cd60bd6df24fc73791c86
Klement Sekera [Tue, 9 Jun 2020 14:17:45 +0000 (14:17 +0000)]
vapi: memset allocated messages to zero
This avoids using dirty data from shared memory by client.
Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I96eecf655bf344ec29609cedbd8dc891b572e207
zhengdelun [Fri, 22 May 2020 07:42:28 +0000 (15:42 +0800)]
ip: reassembly: LRU algorithm should eliminate the longest unused nodes
Type: fix
Signed-off-by: zhengdelun <xszhengdelun@gmail.com>
Change-Id: I3f6240b4c0798f85960acc55a193a0cbf0c67ea4
Klement Sekera [Mon, 8 Jun 2020 11:28:53 +0000 (11:28 +0000)]
nat: optimize prefetching
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Iea1748e8e39d213fcb3f3b52379bd37a6dd6aa3d
Mohsin Kazmi [Fri, 5 Jun 2020 12:43:38 +0000 (14:43 +0200)]
tap: enable gso/csum offload for tun
Type: improvement
Change-Id: I5b9d5ea192776f14a45bf909acc4bef7793521e8
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Mohsin Kazmi [Tue, 2 Jun 2020 13:21:03 +0000 (15:21 +0200)]
vxlan: fix the inner packet checksum calculation
Type: fix
Change-Id: I1da4ace9f3e548af4b5b3373d695e4214c5df2ff
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Mohsin Kazmi [Tue, 2 Jun 2020 13:12:30 +0000 (15:12 +0200)]
misc: add code styling for vxlan encap and vxlan_packet files
Type: style
Change-Id: Id363ccd0e51c61388fb45ef10685929f629cccbd
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Florin Coras [Sun, 7 Jun 2020 20:06:56 +0000 (20:06 +0000)]
tcp: improve rtt estimation with rate sampling
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I25043da84b2f2b3f37024ecfedac535df3004ea5
Dave Barach [Mon, 8 Jun 2020 15:17:19 +0000 (11:17 -0400)]
vlib: stop inlining vlib_add_trace(...)
Packet tracing performance doesn't justify inlining
vlib_add_trace(...) over 500 times.
It makes a 15% text-segment size difference in a representative use-case:
Inline:
$ size .../vnet_skx.dir/ipsec/ipsec_input.c.o
text data bss dec hex filename
6831 80 0 6911 1aff .../vnet_skx.dir/ipsec/ipsec_input.c.o
Not inline:
$ size .../vnet_skx.dir/ipsec/ipsec_input.c.o
text data bss dec hex filename
5776 80 0 5856 16e0 .../vnet_skx.dir/ipsec/ipsec_input.c.o
Retain the original code as vlib_add_trace_inline, instantiate once as
vlib_add_trace.
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Iaf431dbf00c4aad03663d86f9dd1322e84d03962
Dave Barach [Mon, 8 Jun 2020 13:40:36 +0000 (09:40 -0400)]
vlib: Coverity fix
Fix a nit warning: we're not likely to create a vlib process with more
than 4gb of stack.
Type: fix
Ticket: VPP-1888
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I8bc7f64287c2802b0c286ce3d04443ac723a9a33
Vladimir Isaev [Thu, 21 May 2020 13:34:17 +0000 (16:34 +0300)]
vxlan: Fixed checksum caclculation offset
VXLAN uses csum_offload for IPv6 packets.
But without gso node we have csum calculated only for inner
packet.
This patch adds support for outer header csum calculation.
Checksum for inner packet should be calculated before
interface-output node (for example in vxlan node).
Type: fix
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Signed-off-by: Vladimir Isaev <visaev@netgate.com>
Change-Id: Ica68429ede4426293769207cd83c791ebe72fe56
Klement Sekera [Tue, 19 May 2020 17:47:23 +0000 (17:47 +0000)]
nat: more long read after short write optimization
Replace whitespread (mis)use of snat_session_key_t by proper function
arguments where applicable and inline functions to calculate hash keys
instead of using structs for that. Make all hash tables use same network
byte order port so that there is no longer a discrepancy between static
mappings using host byte order while in2out/out2in tables using network
byte order.
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I80786d2f947c67824c101a13bb608f1fe1080f34
Dave Barach [Sun, 7 Jun 2020 13:18:26 +0000 (09:18 -0400)]
mactime: print error if feature not enabled
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I8fbc4baefecf512573126c5085ed7a6e2e360fbe
Dave Barach [Fri, 5 Jun 2020 13:42:50 +0000 (09:42 -0400)]
fib: fix multiple dpo pool expand cases
Add dpo_pool_barrier_sync/release, use them to clean up
thread-unsafe pool expansion cases.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I09299124a25f8d541e3bb4b75375568990e9b911
Dave Barach [Fri, 5 Jun 2020 11:06:21 +0000 (07:06 -0400)]
fib: fix adj pool expand cases
adj_alloc (...) is not thread safe when the adj pool or combined
counter vectors expand.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I55710de6ecc083b7434e11798659cca9250c9131
Jieqiang Wang [Thu, 4 Jun 2020 06:09:57 +0000 (14:09 +0800)]
build: add libssl-dev library for ubuntu 20.04
Add the libssl-dev library for ubuntu 20.04 in Makefile.
Type: fix
Signed-off-by: Jieqiang Wang <jieqiang.wang@arm.com>
Change-Id: I4187cb041997e7457734ffdb18bdbec98a051669
Dave Barach [Wed, 3 Jun 2020 12:05:15 +0000 (08:05 -0400)]
fib: add barrier sync, pool/vector expand cases
load_balance_alloc_i(...) is not thread safe when the
load_balance_pool or combined counter vectors expand.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I7f295ed77350d1df0434d5ff461eedafe79131de
Klement Sekera [Thu, 4 Jun 2020 12:41:43 +0000 (12:41 +0000)]
nat: fix coverity warning
Type: fix
Change-Id: I0e87021b11009a955f5839bdb68af897145816c1
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Filip Tehlar [Sun, 10 May 2020 22:13:55 +0000 (22:13 +0000)]
ikev2: session cleanup after profile is deleted
Type: fix
Change-Id: I3198461f3dfc13cd3cedf2b8611dc80bb6f959c8
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Damjan Marion [Wed, 3 Jun 2020 18:13:59 +0000 (20:13 +0200)]
dpdk: cleanup, add rx queue struct
Type: improvement
Change-Id: I3defde103ab245404de42d2be7abcb2c43d49a60
Signed-off-by: Damjan Marion <damarion@cisco.com>
Filip Varga [Wed, 3 Jun 2020 13:26:41 +0000 (15:26 +0200)]
nat: fixed input validation
Ticket: VPP-1887
Type: fix
Change-Id: I341ac7b455926a106d736f4de6771aae655db82e
Signed-off-by: Filip Varga <fivarga@cisco.com>
Klement Sekera [Wed, 27 May 2020 12:41:34 +0000 (12:41 +0000)]
nat: add tracing for nat44-hairpinning
Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Ife437f959e29d3de88bd7ee77221ada86fb03e80
Dave Barach [Tue, 2 Jun 2020 12:57:36 +0000 (08:57 -0400)]
docs: improve handoff queue writeup
Type: docs
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4d63a0fbbdb3cc00eac9116f122e5b831d059e33
Damjan Marion [Wed, 3 Jun 2020 10:20:41 +0000 (12:20 +0200)]
vlib: improve node interrupt handling
- add ability to pass data together with interrupt
- avoid locking for local interrupts (same thread)
Type: improvement
Change-Id: I73a2ab2e716bb887a1f02c87788ae83e329f9b40
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ole Troan [Wed, 3 Jun 2020 09:47:55 +0000 (11:47 +0200)]
nat: refactor mss_clamping to not depend on snat_main_t
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I1110e425859a4f1f07952c91b50f263cb7323836
Andrew Yourtchenko [Wed, 29 Apr 2020 16:48:24 +0000 (16:48 +0000)]
bash: functions to set up csit and sandbox env
Type: test
Change-Id: Iceaebfe2faf29a893b9571069212e951273c3d2b
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Signed-off-by: John DeNisco <jdenisco@cisco.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Filip Tehlar [Mon, 25 May 2020 21:35:55 +0000 (21:35 +0000)]
ikev2: remove unused hash computation
Type: improvement
Change-Id: I99c2383dd0d30efd1837f3d10ff2e4cf3a784283
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Andreas Schultz [Tue, 12 May 2020 12:41:16 +0000 (14:41 +0200)]
ip: fix IPv6 mask to prefix length conversion
make sure we don't pass a 0 (zero) to log2.
Type: fix
Signed-off-by: Andreas Schultz <andreas.schultz@travelping.com>
Change-Id: Ib3386ad4686835d3836f48294cee4058e897847a
Dave Barach [Fri, 29 May 2020 20:34:50 +0000 (16:34 -0400)]
nat: update ip4-udp src port for checksum == 0 pkts
Otherwise, the out2in path will discard return-path traffic with
probability 1.0.
Type: fix
Fixes: gerrit 23963 /
f126e746fc01c75bc99329d10ce9127b26b23814
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I621ed99329c04ef358035747dde599c0016b58f5
Paul Vinciguerra [Fri, 29 May 2020 23:01:18 +0000 (19:01 -0400)]
lisp: fix api_format reference
Type: fix
Ticket: VPP-1885
Change-Id: I474fffd4d36f439a19d475a8cb20171ca88274ec
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Matthew Smith [Fri, 29 May 2020 17:29:45 +0000 (12:29 -0500)]
bonding: Revert adjust link state
This reverts commit
9121c415a91904be50071ec55143d9c89b2f1b91.
Reason for revert: causes deadlock with multiple worker threads
Type: fix
Change-Id: Icf3d6d343d99d887abacbaa03acbf04d4628514e
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Florin Coras [Fri, 29 May 2020 16:18:57 +0000 (16:18 +0000)]
lisp: fix api_format
Type: fix
Ticket: VPP-1885
Fixes:
58db6e1
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I6431e49b315e09490fed8fd70ac53872836c6a09
Florin Coras [Thu, 28 May 2020 18:01:26 +0000 (18:01 +0000)]
lisp: fix custom dump
Type: fix
Ticket: VPP-1886
Fixes:
58db6e1
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic40018a756e57bfec05ffbc5e30d18f4feb315db
Neale Ranns [Fri, 29 May 2020 14:19:41 +0000 (10:19 -0400)]
fib: Safe adj walk
Type: fix
the hash walk does not give the same guarantees as the bihash so
walk in a safe manner.
Change-Id: Idfe48c3a84ab3a341d887f7d196bc81ba34ae8b0
Signed-off-by: Neale Ranns <nranns@cisco.com>
Mohsin Kazmi [Thu, 28 May 2020 18:49:46 +0000 (20:49 +0200)]
gso: add checksum and payload size testing
Type: test
Change-Id: I9e4f7cf44d465712aa26e5dd6a0ff38588964a39
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Mohsin Kazmi [Thu, 28 May 2020 18:56:43 +0000 (20:56 +0200)]
gso: fix flag for inner header
Type: fix
Change-Id: Ic3fc488521636f7f7c9402a20db45fdb599adaae
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
John DeNisco [Thu, 21 May 2020 13:00:04 +0000 (09:00 -0400)]
docs: Minor updates to feature.yaml files
Type: docs
Signed-off-by: John DeNisco <jdenisco@cisco.com>
Change-Id: Iba106d33d34766b91e46980e7237fbdfc3710b8b
John DeNisco [Fri, 29 May 2020 12:56:38 +0000 (08:56 -0400)]
docs: Minor fixes in publish_docs.sh and sanitizer.rst
Fix a warning in sanitizer.rst and publish_docs.sh
Type: fix
Signed-off-by: John DeNisco <jdenisco@cisco.com>
Change-Id: I66d724f52a7b724a97a894e1cd35c1239aeedcdf
Elias Rudberg [Tue, 26 May 2020 23:03:46 +0000 (01:03 +0200)]
misc: ipfix-export unformat u16 collector_port fix
Use %U and unformat_udp_port instead of %u for unformat() call for
u16 collector_port number in set_ipfix_exporter_command_fn() to
avoid corruption of other variables which can happen if unformat()
with %u is used with a 16-bit variable. This avoids crash due to
corrupted fib_index value.
Type: fix
Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: Id54273fcc458a7f9c5aa4025aa91711f160c1c1a
Mohsin Kazmi [Thu, 28 May 2020 10:37:56 +0000 (12:37 +0200)]
misc: fix the pretty print for api trace
Type: style
Change-Id: I4ef8ba30be2696e8f63d5305027d2aa629cbdb88
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Andrew Yourtchenko [Thu, 21 May 2020 17:05:41 +0000 (17:05 +0000)]
misc: Avoid sample.md from in the VPP docs, clean up the extraneous copy
I had cleaned up the sample.md previously for 20.01, but when later
that was merged to master, the file was renamed. So, fix this issue.
Change-Id: I6347685af216901fbfdd445606735b9bf79f8fe5
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
e2e3c38be6d91c3deb15373992cd5a764e773060)
Mohsin Kazmi [Tue, 26 May 2020 12:34:34 +0000 (14:34 +0200)]
tap: fix rx queue index
Type: fix
Change-Id: I5601bdeb47d08118476ff7bd29435d2c1dba34b9
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Benoît Ganne [Wed, 20 May 2020 16:53:50 +0000 (18:53 +0200)]
dhcp: use per-thread vlib main instead of global one
Type: fix
Change-Id: I8890aa5cc3c576fc9fb68735549dfab721714310
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Dave Barach [Tue, 26 May 2020 15:19:28 +0000 (11:19 -0400)]
dhcp: vat support for the dhcp_client_dump API
Also: permanently solve ordering issues with the vpp builtin vat
plugin loader, by explicitly loading vat plugins once we're sure that
all data plane plugins have registered their APIs / API message
handlers.
Fix compilation / link errors when the vpp builtin vat plugin loader
is disbled by cmake configuration.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Id553c63ae860ebfc196c5ad4b55c19e08fec2c9e
Signed-off-by: Ole Troan <ot@cisco.com>
Damjan Marion [Thu, 21 May 2020 17:09:13 +0000 (19:09 +0200)]
build: make address sanitizer options configurable with cmake
Type: improvement
Change-Id: I9ee0407e0634f773862dd65ff5d5594814294c2c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Wed, 27 May 2020 15:17:24 +0000 (15:17 +0000)]
ipsec: Add/Del IPSec SA is not MP safe
Type: fix
we can probably do better, but for now this is needed
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I07161f5ac07a70a0e6db6608ba31659d9bc2c9ed
John Lo [Wed, 13 May 2020 02:34:39 +0000 (22:34 -0400)]
ethernet: fix DMAC check and skip unnecessary ones (VPP-1868)
Fix and optimize DMAC check in ethernet-input node to utilize NIC or
driver which support L3 DMAC-filtering mode so that DMAC check can be
bypassed safely for interfaces/sub-interfaces in L3 mode.
Checking of interface in L3-DMAC-filtering state to avoid DMAC check
require the following:
a) Fix interface driver init sequence for devices which supports L3
DMAC-filtering to indicate its capability and initialize interface
to L3 DMAC-filtering state.
b) Fix ethernet_set_flags() function and its associated callback
flags_change() functions registered by various drivers in interface
infra to provide proper L3 DMAC filtering status.
Maintain interface/sub-interface L3 config count so DMAC checks can be
bypassed if L3 forwarding is not setup on any main/sub-interfaces.
Type: fix
Ticket: VPP-1868
Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I204d90459c13e9e486cfcba4e64e3d479bc9f2ae
Damjan Marion [Tue, 26 May 2020 22:37:49 +0000 (00:37 +0200)]
dpdk: bump to DPDK v20.05
Type: improvement
Change-Id: I5f89fc3d994bd85d2c5138069ea2c58661814228
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 27 May 2020 14:43:35 +0000 (16:43 +0200)]
vppinfra: fix SIGBUS in bihash init when running unpriviledged, take two
Looks like MAP_LOCK is not enough, so call mlock(...) instead....
Type: fix
Change-Id: I1bc668a2bf3c861ca1c2d376c0fb6bfea87d4f48
Signed-off-by: Damjan Marion <damarion@cisco.com>
Klement Sekera [Tue, 26 May 2020 10:38:05 +0000 (10:38 +0000)]
ip: reassembly: use correct IP header offset
Type: fix
Ticket: VPP-1883
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Icf50a645e114fa3b7bd974f8c82f5ceebfcedcd7
Matthew Smith [Mon, 18 May 2020 15:54:17 +0000 (10:54 -0500)]
bonding: adjust link state based on active slaves
Type: improvement
Bond link state is being maintained inconsistently. It is initially set to
up. If the bond interface admin state is set to down, the link state is
set to down. If the bond interface admin state is set to up, the link
state is only set to up if there are active slave interfaces at that point.
If slaves become active at some later time, it does not get updated. Its
next chance to be updated is the next time the bond interface is set to
admin up.
To address this, do not set the link state to up after creating a bond.
Adjust the link state as slave interfaces are attached or detached
based on whether the bond is getting its first active slave or losing
its last one.
Unit test added to verify correct maintenance of link state.
Change-Id: I31f17321f7f0e727e1ab1e01713423af6566dad9
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Elias Rudberg [Wed, 27 May 2020 00:15:53 +0000 (02:15 +0200)]
nat: fix regarding vm arg for vlib_time_now call
Change in snat_ipfix_header_create() to use thread-specific
vlib_main_t *vm pointer to avoid problems with different threads
accessing the same vlib_main_t data structure. This avoids
assertion failure when vlib_time_now() is called with a vm
corresponding to a different thread.
Type: fix
Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: I2096c1debb5688d3b97e5ed9a0ea78d94053d8b7
Ole Troan [Mon, 18 May 2020 09:14:05 +0000 (11:14 +0200)]
api: make vpp api handlers endian independent
Add a new boolean to signal that the API infrastructure should performan any required
endian conversions for the API handler.
am->is_autoendian[mm->msg_id_base + VL_API_MAP_ADD_DOMAIN] = 1;
Similarly add new REPLY_ macros that perform endian conversion.
These changes do not change the on-the-wire encoding of the API messages, and therefore the API CRC is not changed.
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I7588f8ccb38b2d1e8d85ea17be99bac43f756267
Signed-off-by: Ole Troan <ot@cisco.com>
Florin Coras [Tue, 26 May 2020 19:45:45 +0000 (19:45 +0000)]
vcl: fix ldp fcntl64
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I342d8f928fcc7de74f9bd288c1a5d63ea1f90020
Neale Ranns [Tue, 26 May 2020 08:52:55 +0000 (08:52 +0000)]
fib: Fix interpose source reactivate
Type: fix
when the interpose is on an adj-fib and the cover is removed the adj
source will not install. this lead to no path list being found for the
interpose source and a crash. pick a drop path list in this case.
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: Ied217da043926c913657080f5ffb151201225d23
Neale Ranns [Mon, 25 May 2020 09:09:36 +0000 (09:09 +0000)]
fib: Use basic hash for adjacency neighbour table
Type: improvement
a bihash per-interface used too much memory.
Change-Id: I447bb66c0907e1632fa5d886a3600e518663c39e
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Tue, 26 May 2020 00:47:52 +0000 (00:47 +0000)]
vcl: do not propagate epoll events if session closed
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1e9652b476bbc07852b4e701a948c36a0d8c67fa
Damjan Marion [Mon, 25 May 2020 17:31:42 +0000 (19:31 +0200)]
pci: improve vfio logging
Type: improvement
Change-Id: Ic49a43651b80b79fa278e29964da5cb2ead2a818
Signed-off-by: Damjan Marion <damarion@cisco.com>
Rajesh Goel [Tue, 26 May 2020 06:34:18 +0000 (12:04 +0530)]
ipsec: DES/3DES fixing the iv_len for openssl crypto
Type: fix
Signed-off-by: Rajesh Goel <rajegoel@cisco.com>
Change-Id: I8d128598b4c872f19b64c779c19b5908ba2f2c08
Florin Coras [Mon, 25 May 2020 18:17:03 +0000 (18:17 +0000)]
vcl: fix udp connected check
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I83dafe10cdc78fbb9a751f32155cd84d281b12d9
Aloys Augustin [Mon, 25 May 2020 16:07:24 +0000 (18:07 +0200)]
tests: update pip and pip-tools
This fixes an issue where the pinned requirements file can be modified
when running the tests.
Change-Id: Ic89d1844d1fd8d00f62211a9b051a26ac34ee316
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Florin Coras [Mon, 25 May 2020 19:15:56 +0000 (19:15 +0000)]
tcp: fix sack block validation on wrap
Type: fix
Fixes:
487507f
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia9813ae09d14111dc8edac0fa6ab082e13ab6e2e
Ole Troan [Wed, 20 May 2020 13:47:06 +0000 (15:47 +0200)]
api: add new stream message convention
Instead of having to wrap dump/detail calls in control ping, send details messages in between a normal
reply / request pair. As expressed in the below service statement.
Example:
service {
rpc map_domains_gets returns map_domains_get_reply
stream map_domain_details;
};
define map_domains_get
{
u32 client_index;
u32 context;
u32 cursor;
};
define map_domains_get_reply
{
u32 context;
i32 retval;
u32 cursor;
};
To avoid blocking the main thread for too long, the replies are now sent in client message queue size
chunks. The reply message returns VNET_API_ERROR_EAGAIN when there is more to read.
The API handler must also include a "cursor" that is used to the next call to the get function.
API handler example:
REPLY_AND_DETAILS_MACRO (VL_API_MAP_DOMAINS_GET_REPLY, mm->domains,
({
send_domain_details (cursor, rp, mp->context);
}));
The macro starts from cursor and iterates through the pool
until vl_api_process_may_suspend() returns true or the iteration
reaches the end of the list.
Client Example:
cursor = 0
d = []
while True:
rv, details = map_domains_get(cursor=cursor)
d += details
if rv.retval == 0 or rv.retval != -165:
break
cursor = rv.cursor
or the convenience iterator:
for x in vpp.details_iter(vpp.api.map_domains_get):
pass
or
list(details_iter(map_domains_get))
Change-Id: Iad9f6b41b0ef886adb584c97708dd91cf552749e
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Alexander Chernavin [Thu, 21 May 2020 14:06:19 +0000 (10:06 -0400)]
dpdk: del warnings that duplicate counters in esp
Type: improvement
Change-Id: I51cbe5c76a88d7fa65fa24dc1528e4f991eba534
Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
Damjan Marion [Sun, 24 May 2020 18:43:10 +0000 (20:43 +0200)]
vppinfra: fix SIGBUS in bihash init when running unpriviledged
Obserbed when VPP is running in k8s container.
Type: fix
Change-Id: Ibbff9c3921bd7f4f97d47cb6f10eed8ed5efe269
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Fri, 22 May 2020 20:36:29 +0000 (20:36 +0000)]
vcl: add sendmsg/recvmsg for vlsh in ldp
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If61eec3f5723e6b36e6f4a21c05d8d0dd3547fc7
Florin Coras [Fri, 22 May 2020 21:51:30 +0000 (21:51 +0000)]
tcp: track buffer alloc failures
Reported as part of "show tcp stats"
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I499ab4e41d13aaf1a0d060e37f09087e63d09567
PiotrX Kleski [Tue, 5 May 2020 12:14:22 +0000 (14:14 +0200)]
ipsec: fixed chaining ops after add footer and icv
In case there is no free space in first buffer for ICV and footer,
additional buffer will be added, but esp_encrypt will stay in single
buffer mode.
The issue happens for the following payload sizes:
- TCP packets with payload 1992
- ICMP packets with payload 2004
This fix moves the single/chained buffer ops selection to after
esp_add_footer_and_icv call.
Type: fix
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Signed-off-by: PiotrX Kleski <piotrx.kleski@intel.com>
Change-Id: Ic5ceba418f738933f96edb3e489ca2d149033b79
Damjan Marion [Fri, 22 May 2020 17:00:25 +0000 (19:00 +0200)]
vppinfra: remove include
Type: refactor
Change-Id: Iea83e0ea8a6e13f3c9ece1a13f891c1fa0956711
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 22 May 2020 15:53:49 +0000 (17:53 +0200)]
avf: interrupt mode, support for WB_ON_ITR
Type: improvement
Change-Id: I5c944c3f82e0f278b64f28e09a74f24514c029f0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 22 May 2020 15:22:41 +0000 (17:22 +0200)]
avf: improve link speed handling
Support VIRTCHNL_VF_CAP_ADV_LINK_SPEED.
Type: improvement
Change-Id: Ie45c9d557d0369464cbb6881ee1259ef3807d7d5
Signed-off-by: Damjan Marion <damarion@cisco.com>
Vladimir Ratnikov [Thu, 21 May 2020 17:52:51 +0000 (13:52 -0400)]
nat: fix dslite session port allocation
Fix allocation of port per dslite session.
After each session is created per protocol,
when new one should be created with new port,
instead it's trying to create with the same port
and while(1) loop is executed forever and VPP does
not response
Type: fix
Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com>
Change-Id: Ic91b8b07253498ef9846ca60bcd4c4c76a5fac91
Filip Varga [Wed, 20 May 2020 12:34:01 +0000 (14:34 +0200)]
nat: output fib index fix
Type: fix
Change-Id: I7cb7e3716aee865b12235865009e39ed6ad16680
Signed-off-by: Filip Varga <fivarga@cisco.com>
Damjan Marion [Tue, 7 Apr 2020 22:52:53 +0000 (00:52 +0200)]
vlib: enforce buffer alloc return value check
Type: improvement
Change-Id: I33cd702f9c4d995520509fdb16e3b8f8fd50e535
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Sat, 16 May 2020 18:18:14 +0000 (18:18 +0000)]
vcl: support connected udp listens
Request connected udp listener behavior by setting
VPPCOM_ATTR_SET_CONNECTED attribute with vppcom_session_attr
Type: feature
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iba95155c0f41cea8c6e1a4263946270d49c213ac
Neale Ranns [Wed, 20 May 2020 19:58:20 +0000 (19:58 +0000)]
ip: Dual loop error in midchain chksum
Type: fix
Change-Id: Idf7c80b7d81f796bd0512bca4276bcfcf2af241a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Damjan Marion [Wed, 20 May 2020 20:01:44 +0000 (22:01 +0200)]
vlib: mmap process stacks
Instead of allocating stack from the main heap, this patch mmaps stack
memory together with guard page.
This aproach reduces main heap usage, and stack memory is prefaulted
on demand, so bigger process stacks will have zero impact on memory
usage as long as stack memory is not needed for real.
In addition, it fixes issue with systems which have bigger default page
size (observed with 65536).
Type: improvement
Change-Id: I593365c603d4702e428967d80fd425fdee2c4a21
Signed-off-by: Damjan Marion <damarion@cisco.com>
Benoît Ganne [Mon, 11 May 2020 13:53:54 +0000 (15:53 +0200)]
docs: asan: update doc to match current status
Type: docs
Change-Id: I45265876c9c778f6b91d39f30eb6035f14d166ec
Signed-off-by: Benoît Ganne <bganne@cisco.com>
hanlin [Tue, 19 May 2020 09:34:17 +0000 (17:34 +0800)]
vcl: nest vcl_mq_epfd to support epoll_wait without high CPU usage
Now, libc epfd and vls epfd are independent and can only epoll_wait independently without timeout, then app calling epoll_wait will occupy high CPU. So we nest vcl_mq_epfd into libc epfd when using eventfd with VPP, and then we can only epoll_wait libc epfd with specified timeout.
Type: feature
Signed-off-by: hanlin <hanlin_wang@163.com>
Change-Id: I6b6e0f501c769e186714bfbc187cfaed2533b4c2
Signed-off-by: hanlin <hanlin_wang@163.com>
Satoru Matsushima [Mon, 18 May 2020 08:33:57 +0000 (17:33 +0900)]
srv6-mobile: Update the doc for gtp4.dt and gtp6.dt funcitons.
Document update to reflect merged SRv6 functions of lookup and forwarding for inner IP packet encapsulated with outer IP and GTP-U headers.
Type: docs
Signed-off-by: Satoru Matsushima <satoru.matsushima@gmail.com>
Change-Id: I85c9ddf6bf9fa63f2b8b6e03eff3ecec1e7615ab
Dave Barach [Tue, 19 May 2020 13:56:22 +0000 (09:56 -0400)]
vppinfra: refactor mpcap.h
vppinfra source files MUST NOT #include <vlib/vlib.h>, <vnet/vnet.h>
or similar. Move mpcap_add_packet(...), mpcap_add_buffer(...) to a new
file: src/vnet/mpcap.h.
Type: refactor
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Id517aef6fe49b618f853ce32940b91ba45a1e60d
Matthew Smith [Mon, 23 Mar 2020 16:27:49 +0000 (11:27 -0500)]
dpdk: change netvsc device port type
Netvsc devices have the port type determined from their link speed.
The link speed between reboots of an Azure VM does not always end
up at the same value, so an interface that was FortyGigabitEthernet0
earlier may be FiftyGigabitEthernet0 now. That makes it difficult
to maintain a persistent store of configurations and apply those at
startup.
Change the port type to be VF so the name will always be generated
as VirtualFunctionEthernetX.
Type: improvement
Change-Id: I58cab852b87c0bcd9f73afe239803f38dab5c159
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Benoît Ganne [Tue, 19 May 2020 12:15:41 +0000 (14:15 +0200)]
dpdk: fix pktmbuf pool private data init
Type: fix
Change-Id: I7349840af48eec209532dab43a8ad0bd68993268
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Ole Troan [Tue, 19 May 2020 10:33:00 +0000 (12:33 +0200)]
vppapigen: handle new api file for crcchekcer
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I1b3ae8b348eb3cba628a55ea3e72e85b9a4288d5
Jakub Grajciar [Tue, 5 May 2020 10:30:30 +0000 (12:30 +0200)]
interface: fix interface rx mode config API
Swap byte order for fields of type vl_api_rx_mode_t.
Ticket: VPP-1871
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Ia1745257b57209d41661d38067e0dd7618f9a9b9
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
(cherry picked from commit
aefcd1a3579ec2c93f606b151d563d87ea211387)
Damjan Marion [Mon, 18 May 2020 17:29:52 +0000 (19:29 +0200)]
vppinfra: OpenPOWER ELF V2 ABI version of clib_{longjmp,setjmp,calljmp}
Type: improvement
Change-Id: Iea8e08dc18b72334f69af77c2753e900be6b97fb
Signed-off-by: Damjan Marion <damarion@cisco.com>
Paul Vinciguerra [Sat, 16 May 2020 03:13:36 +0000 (23:13 -0400)]
libmemif: cleanup typos
cleaned up typos in documetation while doing a read through.
Type: style
Change-Id: Id8abbd8d6297ee10490c12a8e62097224f7ec1e1
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Ignas Bacius [Wed, 5 Feb 2020 08:45:12 +0000 (10:45 +0200)]
ip6-nd: correct set-ip6-nd-proxy CLI short_help
Type: fix
Signed-off-by: Ignas Bacius <ignas@noia.network>
Change-Id: Id99a15272f6f12a724a4cfd9de461f1aa6a6a634
Damjan Marion [Fri, 15 May 2020 23:48:47 +0000 (01:48 +0200)]
vppinfra: use byte swap builtins
Type: improvement
Change-Id: I438206513b3cc3dedc0241b43c4ce037afa83e2b
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ole Troan [Wed, 13 May 2020 09:47:43 +0000 (11:47 +0200)]
vppapigen: add assert for python version
The recent introduction of f-strings require >=Python3.6
Fix a couple of pycodestyle warnings.
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Id9e375bb8febb157d7f9d7fa21808724770df6f8
John Lo [Thu, 14 May 2020 19:02:16 +0000 (15:02 -0400)]
l2: L2/L3 mode swicth cleanup and l2-patch fix
Cleanup L2/L3 mode switch to not redirect to/from ethernet-input node
as it is no longer necessary.
L2 patch should use sw_if_index for device feature enable/disable.
Type: fix
Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I0f24161d027b07c188fd1e05276146f94c075710
Ignas Bacius [Tue, 18 Feb 2020 10:33:09 +0000 (12:33 +0200)]
misc: fix typo in set-ipfix-exporter CLI short_help
Type: fix
Change-Id: Id6687780b9a740323bd2eef58447864e70dc0235
Signed-off-by: Ignas Bacius <ignas@noia.network>
Damjan Marion [Tue, 12 May 2020 10:22:18 +0000 (12:22 +0200)]
misc: fix ubuntu 20.04 python deps
Type: fix
Change-Id: I9cdfbffd6333d090f970422bf047aaa90c1e4c65
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Fri, 15 May 2020 22:40:48 +0000 (00:40 +0200)]
vppinfra: remove trailing whitespace in longjmp.S
Type: refactor
Change-Id: I2acbd864186c1d7694701c047ba72f58750a8558
Signed-off-by: Damjan Marion <damarion@cisco.com>
Benoît Ganne [Fri, 15 May 2020 14:12:23 +0000 (16:12 +0200)]
vlib: restore commands for non-interactive sessions
'quit' and 'show terminal' are valid for non-interactive sessions too.
Type: fix
Fixes:
a58be82dda89d6496f92e451b42eee31f0cf47b4
Change-Id: Ib63244c7b64ad2e30c257ed19e982295f59bfffa
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Fri, 15 May 2020 21:23:58 +0000 (21:23 +0000)]
vcl: remove udpc transport
Type: refactor
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I145ff3301f168973c4f7f32c337bbcac47900705
Ray Kinsella [Fri, 15 May 2020 13:50:09 +0000 (14:50 +0100)]
misc: removed executable bits from source files
Identified and removed executable bit from source files in the tree.
find . -perm 755 -name *.[ch] -exec chmod a-x {} \;
Type: improvement
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I00710d59fcc46ce5be5233109af4c8077daff74b