Commit Graph

8306 Commits

Author SHA1 Message Date
Filip Tehlar
efcad1a9d2 ipsec: add support for chained buffers
Type: feature

Change-Id: Ie072a7c2bbb1e4a77f7001754f01897efd30fc53
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2020-02-11 23:07:38 +00:00
Florin Coras
16d974ec59 session: avoid scanning new io list under load
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Idaa7cc26ad941be86daec4ed5920727237712f4a
2020-02-11 20:30:11 +00:00
Klement Sekera
90d28846f9 vppinfra: remove unused variable from timing wheel
Type: fix

Change-Id: I77b03efcac04cc46550d03657464ab8de5d7da78
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2020-02-11 19:58:23 +00:00
Dave Barach
dee0a3bb04 http_static: VPP web application HowTo
This sketch should save a lot of time working out uninteresting but
important details.

Type: docs

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Icd5705230adfda6539360ef3c46ff3a68b3bed74
2020-02-11 17:10:07 +00:00
pcamaril
30e7671c85 sr: update NH value for Ethernet payloads
Upon encapsulation of L2 frames, IETF has replaced the NextHeader value from 59 (IPv6 No Next Header) to 143 (Ethernet).
https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml

Type: fix

Signed-off-by: pcamaril <pcamaril@cisco.com>
Change-Id: I88aa5590c81d16700ff7a0bbe6337e113179496e
Signed-off-by: pcamaril <pcamaril@cisco.com>
2020-02-11 16:25:41 +00:00
Simon Zhang
619179cfcd tls: refactor picotls ctx_read process to improve CPS
Type: refactor

Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
Change-Id: I2bb675b4df3c4151f4b0791efcfe05b1d0f87a33
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
2020-02-11 16:11:13 +00:00
Florin Coras
6fe8998fef svm: numa awareness for ssvm segments
Type: feature

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I999836a7893a89aac5243b111eac35fddd03e2a6
2020-02-11 15:53:13 +00:00
Florin Coras
fa2a316663 ip: fix ip-local errors
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie8bc5c9a03e858487cf565b4e9b520e6b496337a
2020-02-11 15:49:46 +00:00
Jon Loeliger
4a06846dd6 vlib: Skip core 0 if workers are configured.
According to the description in the startup.conf, the assignment
of worker threads starts with the lcore following the main_lcore.
A non-zero skip_cores will correctly achieve this assignment.
However, prior to this patch when workers are assigned, the code
picks up and assigns core 0 even thought it shouldn't.
This patch determins if a non-zero number of workers are desired
and if so, marks CPU unavailable for a worker assignment.

Type: fix

Change-Id: I1fdf73a6f218dcbf146fda2efc90c553f7cd6d20
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2020-02-11 13:53:09 +00:00
Florin Coras
deb6f784ed tcp: fix input error counters
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I87940d02813b66616f1944e41b16c8cc16f5dac0
2020-02-11 05:16:42 +00:00
Florin Coras
43818c1e02 tcp: add option to avoid endpoint cleanup
Type: feature

If set, avoid trying to cleanup the local endpoint table.

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Iaa382ae74523d608217d2d17544bf1e7d82b2728
2020-02-10 20:13:02 +00:00
Florin Coras
4c95995749 vppinfra: use vm memory allocator for numa mapping
Type: refactor

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I13b239cd572ae6dfaec07019d3d9b7c0ed3edcfa
2020-02-10 20:12:40 +00:00
Damjan Marion
f1ecb65553 ipsec: fix AES-GCM block size
Type: fix

Change-Id: I0c9640dab2c0eaba369bc8f3ff7ae56d8e97e170
Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-02-10 19:17:55 +00:00
Jon Loeliger
f617b145eb vlib: properly configure main thread's core id
Prior to this patch, the main thread's core id was
always reported as 0.
This patch makes a call to vlib_get_thread_core_socket() on
the main thread so that its core id is set properly.

Type: fix
Fixes: 5d64c7868f

Change-Id: I019cb95eec031da25197e48d956038c4bd6b5040
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2020-02-10 18:53:46 +00:00
Dave Barach
e053056bb3 misc: add FEATURE.yaml files
For src/vnet/classify, src/vnet/cop, src/vnet/pg, and src/vlib/unix

Type: docs

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ib6ab734608693a1e9562a44808246950616e8d36
2020-02-10 16:22:00 +00:00
Jakub Grajciar
b954f0125b sctp: API cleanup
Use consistent API types.

Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I344ff299e2a20552450d82064c86aecb4403a71d
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2020-02-10 13:27:38 +00:00
Neale Ranns
f267d11475 ip-neighbor: fix MLD reports not being sent
Type: fix

Change-Id: I8f81cd6c29ff8cb4f0b4850b8b1f6611d89ddb38
Signed-off-by: Neale Ranns <nranns@cisco.com>
2020-02-10 13:02:23 +00:00
Filip Tehlar
8ebcb7a99d ikev2: better logging
Type: refactor

Change-Id: Iedcb24684c54f4d78583ab3aa3db1097e73df248
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2020-02-10 11:57:37 +00:00
Filip Tehlar
14b804898a ipsec: remove dead code
Type: style

Change-Id: Ifda9597bf4aee89cf1dfd287429a2772fed8f535
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2020-02-10 11:57:00 +00:00
Vladimir Ratnikov
a877cf9f39 ip: more detailed show reassembly commands
Options like:
expire_walk_interval_ms,max_reassemblies,timeout_ms
can be configured via API, but it's impossible to
check them using vppctl, but this can be a useful
feature

Type: feature

Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com>
Change-Id: Iac8a96201a7a70b82e9852edc89b819c5d451a58
2020-02-10 08:32:54 +00:00
Matthew Smith
97677a26f7 ip6: fix l4 checksum with hop-by-hop header
L4 checksums for IPv6 should be calculated using a pseudo header that
includes the source/destination addresses, payload length, and payload
protocol.

ip6_tcp_udp_icmp_compute_checksum() was using the payload length and
protocol from the IPv6 header. If there is a hop-by-hop header (or any
other extension header), the payload length used for the pseudo header
should only include the upper layer header and payload and not the
extension header bytes. Same deal with the protocol, the upper layer
next header value should be used instead of the extension header.

Type: fix
Fixes: cb9cadad57

Change-Id: Ifa2c9ad41c0fc4eea674f0671255b637c8e01f71
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2020-02-10 07:54:19 +00:00
Andrew Yourtchenko
56ac770df9 misc: fix the MAKE_PARALLEL_JOBS for 'make verify' target
MAKE_PARALLEL_JOBS was prepending "-j", which in case of nested targets like "verify"
resulted in ninja being executed with "-j -j" flags.

Solution: prepend -j only at the moment of setting the MAKE_PARALLEL_FLAGS variable,
this keeps MAKE_PARALLEL_JOBS intact regardless of depth of the job call tree.

Type: make
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I10a69fe527758e5a862852a9f2102aeaca30e88f
2020-02-08 14:21:58 +00:00
Dave Wallace
2edff14462 tests: skip extended quic tests under development
Type: test

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I05c464311e98d149f7bc06aa801fd8aefda1959e
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2020-02-07 17:57:51 -05:00
Dave Wallace
3ce03520a2 quic: update config values for large stream tests
- Update vpp and vpp_echo parameters to enable
  large data stream tests to pass.
- Standardize stream size nomenclature.

Type: fix

Change-Id: I929ac9f43ecfccf2c3c3fe4d076761154512fac5
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2020-02-07 21:35:52 +00:00
Ed Kern
c03bb3b431 build: Makefile dep change for ubuntu
Alter dep name and location for ubuntu-20 package naming

Dropping 14.04 support while keeping 16.04 and 18.04
Dropping python2-dev for ubuntu-20

Type: make

Change-Id: I324aa646cdb6e13d39b7a99722857e59906b0843
Signed-off-by: Ed Kern <ejk@cisco.com>
2020-02-07 19:13:54 +00:00
Benoît Ganne
84382ae45c fib: fix non-NULL terminated vectors in cli output
Type: fix

Change-Id: Idbb3f29b13a5c84a8585c4299e51fdfc35f7e1ad
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2020-02-07 17:57:18 +00:00
Ole Troan
6e6ad64a4c tests: support python 3.8
Make test framework python3 version independence.

Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I1ef1eb77b6c1f422ebc4dad0818f87c8e587b34b
2020-02-07 16:53:29 +00:00
Benoît Ganne
dc90c719bc svm: use default SVM address in fifo unit tests
Using random addresses can confuse AddressSanitizer

Type: fix

Change-Id: I44368093f899672ac4d511cc5a01ed87c988e63a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2020-02-07 16:15:04 +00:00
MathiasRaoul
9fef68d778 quic: fix coverity warning
Type: fix

Change-Id: I24aac10a2943151d5b2fe96a0dff1c5beb7340b9
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
2020-02-07 15:39:49 +00:00
Benoît Ganne
1557d9a30d misc: address sanitizer: fix vm instrumentation
Type: fix

Change-Id: Ifd61c0683c85fe7340965c225ed23e46ec88e01a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2020-02-07 12:00:48 +01:00
Filip Varga
edf777272b nat: api & cli command for forcing session cleanup
Ticket: VPP-1836
Type: feature

Signed-off-by: Filip Varga <fivarga@cisco.com>
Change-Id: I8f7fc011bac435445a8916a4948d130ca9162f67
2020-02-07 07:37:05 +00:00
Florin Coras
b71ef86c74 hsa: proxy wnd update only if enough space is available
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I2874d3afbf4cc89209b605c35ca4a5bc5b6868b3
2020-02-06 19:45:33 +00:00
Dave Barach
8dc954a4e7 vlib: add plugin override support
Allow a plugin to override (suppress loading of) other plugins. This
mechanism allows a developer to prevent specific plugins from being
loaded.

To do so, provide an "overrides" list in the plugin definition:

VLIB_PLUGIN_REGISTER () =
{
  <snip>
  .overrides = "avf_plugin.so,ioam_plugin.so,dpdk_plugin.so",
};

or some such. Simply list the plugins in question as shown above. The
.overrides structure member is limited to 256 octets. The named .elf
section mechanism used to discover the vlib_plugin_registration_t's
precludes the use of a variable-length array of strings.

Use the vlib log to eliminate plugin and built-in vat plugin loader
console spew.

Added vlib_log_register_class_rate_limit(...) to allow procedural
configuration of the log rate-limit. We *never* want to rate-limit
plugin loader messages.

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I0a9327b8cf5508482f057342783252112cb44170
2020-02-06 16:58:30 +00:00
Florin Coras
190dc1f678 vcl: fix session closing error
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I94f1365569e98d43486d9528faafc6d7c3ad88f7
2020-02-06 15:04:24 +00:00
MathiasRaoul
707b5369f8 quic: fix coverity warning
Type: fix
Change-Id: I7299b3b0a6d32c1cbe213dc1aadb8260cdec8062
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
2020-02-06 14:43:25 +00:00
Andrew Yourtchenko
7de2961966 misc: VPP 20.01 Release Notes
Type: docs
Change-Id: Iee518fbb9c72716cc90a3ea8efbf3ecbaa969a84
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit fce396738f)
2020-02-06 11:05:15 +00:00
Dave Barach
a690fdbfe1 vppinfra: numa vector placement support
Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I7e7d95a089dd849c1f01ecea84529d8dbf239f21
2020-02-05 23:38:56 +00:00
Ed Kern
86e8bce44f build: Makefile dep change
Alter dep name and location for centos-8 package naming

Change-Id: I50eb702d0541b658ea98fd3f190ba0de60c3fc49
Type: make
Signed-off-by: Ed Kern <ejk@cisco.com>
2020-02-05 18:11:32 +00:00
Ole Troan
2c6639c695 nat: move dslite to separate sub-plugin
Type: refactor
Change-Id: If3d9f16f3a06c10b354f1eef674e8db5f3c44de7
Signed-off-by: Ole Troan <ot@cisco.com>
2020-02-05 15:45:30 +00:00
Vladimir Isaev
72e31bc2d9 stats: fix state counter removal
Avoid using vec_del1() for directory vector to keep indexes valid all
the time.

There are state counters for each slave in LACP bond mode which can be
dynamically created and removed. Vector index is used to access these
counters. But also vec_del1() is used to remove counter from vector.
This function changes the index of the last element, so after this we
are unable to access ex-last element using old index.

As a result it is not possible to add-del-add two interfaces to the LACP
bond:

DBGvpp# create bond mode lacp
BondEthernet0
DBGvpp# create packet-generator interface pg1
DBGvpp# create packet-generator interface pg2
DBGvpp# bond add BondEthernet0 pg1
DBGvpp# bond add BondEthernet0 pg2
DBGvpp# bond del pg1
DBGvpp# bond del pg2
DBGvpp# bond add BondEthernet0 pg1
DBGvpp# bond add BondEthernet0 pg2
bond add: /if/lacp/1/3/partner-state is already register

Type: fix

Signed-off-by: Vladimir Isaev <visaev@netgate.com>
Change-Id: I2c86e13905eefdef6233369cd4ab5c1b53d123bd
2020-02-05 15:34:49 +00:00
Chenmin Sun
a488f37559 api: fix vl_api_clnt_node process stack overflow
Type: fix

Some simple settings(e.g. bringing up an i40e/ice interface) through
vnat consume more than the currently available stack space.

This root cause of this issue is same with commit
b2dbb36fc2 "vlib: fix startup-config \
-process stack overflow" and commit 2fd44a00aa \
1758c199bf "vlib: fix cli process stack overflow"

Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I312e4fed96a679aa68b859e28a90a2a4b6eb0c6e
2020-02-05 15:24:57 +00:00
John Lo
90430b6e05 ipsec: set l2_len for GRE-TEB tunnel decap
Type: fix
Ticket: VPP-1831

Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I655964b22021ac38cbced577091a1156286d4fd6
2020-02-05 14:29:25 +00:00
Dave Barach
51cabf2a14 vppinfra: deal with 0 return from os_cpu_clock_frequency()
Sporadic reports of os_cpu_clock_frequency() returning 0.0 in highly
parallel container environments.

To avoid immediate division by zero:
  Step 1: try estimate_clock_frequency(1e-3).
  Step 2: give up. Pretend we have a 2gHz clock.

Type: fix

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I19d0fe5259b757ab778599c7026ce485153b43fa
2020-02-05 09:20:48 +00:00
Haggai Eran
a80f8f3717 dpdk: use port_id as interface name suffix for representors
Type: feature

Representor devices include a port ID as part of their switch_info struct, and
it is helpful to use that in the interface name.

Signed-off-by: Haggai Eran <haggai.eran@gmail.com>
Change-Id: Id24627e7daf857f8b0e8ace2f592c098678081c7
2020-02-05 09:20:26 +00:00
Haggai Eran
2347278d95 dpdk: output switch information
Type: feature

Output DPDK switch information to allow finding out which DPDK ports are
associated with which DPDK representor ports.

Signed-off-by: Haggai Eran <haggai.eran@gmail.com>
Change-Id: I612cbd5a97e04787eca13423f53c7283d5945e37
2020-02-05 09:19:35 +00:00
Mohsin Kazmi
574be8fe22 misc: add new type for commit message
Type: style

Change-Id: Ibfa8bd1c0987fd2a5050be6c454f665666eb0210
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2020-02-05 09:12:12 +00:00
Florin Coras
5414062412 vcl: switch to closed state after app close
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I851db474538de76d5f70dd6d6f83a6487a5a02bd
2020-02-04 19:12:36 +00:00
Filip Varga
9fbacbc56b nat: pool allocation function fix
Type: fix

Change-Id: I75b20db66fb58e1724a212253c51315836079f4b
Signed-off-by: Filip Varga <fivarga@cisco.com>
2020-02-04 13:36:57 +00:00
Ole Troan
59b6c0c86d vppapigen: fix options representation
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ief77110160120ea0e1291cc79949a73404cdbfda
2020-02-04 13:05:28 +00:00
Steven Luong
13ff90fe53 virtio: update FEATURE.yaml to include description for vhost-user
Add features supported by vhost-user

Type: docs

Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Iba4c5244c40324b603e2803ade8ecc0816326de8
2020-02-04 10:37:03 +00:00