7736 Commits

Author SHA1 Message Date
John DeNisco
c96d618a5d docs: Rewrite the what is VPP (first) section, also fix the build
Signed-off-by: John DeNisco <jdenisco@cisco.com>
Change-Id: Ifb558171f8976a721703e74afea997d006273b5f
Signed-off-by: Dave Barach <dave@barachs.net>
2019-11-06 16:15:49 -05:00
Paul Vinciguerra
340c15c6ed docs: add spellcheck to 'make docs' sphinx docs
The CI gate will fail if there are typos in the docs.

  writing output... [ 21%] events/Summits/OpensourceSummit...
  writing output... [ 22%] events/Summits/UKNO/2017_04_30_...

  featuresbyrelease/vpp16.06.rst:34:Rasberry:vpp16.06
  writing output... [100%] usecases/vppinazure
  Spelling checker messages written to /vpp/docs/_build/html/output.txt

  Warning, treated as error:
  Found 1 misspelled words
  Makefile:31: recipe for target 'html' failed
  make[1]: *** [html] Error 2
  make[1]: Leaving directory '/vpp/docs'

If you introduce a term that is not recognized,
please add it to custom dictionary at
docs/spelling_wordlist.txt.

Type: feature

Change-Id: Id49be4fbee617f544f1ab8e78e7de8a4df36448b
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-06 17:53:42 +00:00
Damjan Marion
4d11b6ceca dpdk: conditionally revert rte_vfio_dma_map patch
DPDK have bug which will be fixed in 19.11.

Type: fix
Change-Id: I6c0058928e5991d61b3c5fcba706f35e6886b0f2
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-06 17:36:42 +00:00
Paul Vinciguerra
6b0dd55024 build: add yaml file linting to make checkstyle
Type: feature

fts and trex rely on yaml config files.  Verify
that they are valid, so comitters can catch
errors early.

Change-Id: Ide0bb276659119c59bdbbc8b8155e37562a648b8
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-06 16:40:11 +00:00
Nathan Skrzypczak
7f39e91fe5 quic: free qctx after udp cleanup
Type: fix

As udp_session.opaque is qctx index, qctx free
needs to happen after session cleanup. This patch
also introduces
* assert timer stop on ctx free
* debug cli for listing quic ctx

Change-Id: I3a58d226b094a0bbdf090b4f3eccbc2e11c6329b
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-11-06 14:08:32 +00:00
Tarun Gupta
2089c69efb tcp: IPv6 flow label support
Type:feature

For cases when proxy is in use IPv6 flow label received in origin pkt needs to be added
to ipv6 header of outgoing pkts from proxy to original destination and vice versa.

Signed-off-by: Tarun Gupta <tarungup@cisco.com>
Change-Id: I143f7e67237c0f865333078628a016b50ad5e630
Signed-off-by: Tarun Gupta <tarungup@cisco.com>
2019-11-06 00:42:41 +00:00
Renato Botelho do Couto
ead1e536d6 misc: Fix python scripts shebang line
Type: fix

Since CentOS 8, RPM build script doesn't accept '#!/usr/bin/env python'
as a valid shebang line.  It requires scripts to explicitly chose
between python2 or python3.

Change all to use python3 as suggested by Paul Vinciguerra.

Depends-On: https://gerrit.fd.io/r/23170

Signed-off-by: Renato Botelho do Couto <renato@netgate.com>
Change-Id: Ie72af9f60fd0609e07f05b70f8d96e738b2754d1
2019-11-05 21:08:59 +00:00
Paul Vinciguerra
464e5e0bfe docs: fix 'make doxygen' under python3
The 'make doxygen' component has this cool vpp specific customization called siphon.
This updates the siphon component so that 'make doxygen' works with python3.

Needed-By:  https://gerrit.fd.io/r/23159

Type: docs

Change-Id: Ie29f1602bf3460b637058acbb0a2f19b128a8824
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-05 21:08:27 +00:00
Paul Vinciguerra
ea1a65135e docs: fix issues with src/scripts/fts.py
- packaging issue
  - yaml deprecation
  - yaml formatting

Type: fix

Change-Id: Ia8808cbc83271a3067164f2db2418f071b35607a
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-05 20:47:18 +00:00
Filip Varga
5854b43de4 nat: NAT udp counter & unit test fixes
Ticket: VPP-1798
Type: fix

Change-Id: I42f02d5824575720e95b9fc99cfa864252221a82
Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-11-05 20:45:06 +00:00
Florin Coras
a8e71c8981 session tcp: refactor pacer time
Type: refactor

Change-Id: Ic1c3e1f7987702cd88972acc34849dc1f585d5fe
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-11-05 15:50:37 +00:00
Neale Ranns
0b6a857d85 ip: Fragmentation fixes
Type: fix

if the packet is about to be fragmented, then don't call any of the
actions that expect the rewrite to have been written.
1) don't double count packets thru the adjacency (original & fragments)
2) don't double decrement the TTL for fragments
3) return to ip4-midchain post ip-frag if that's where we started.
4) only run midchain/mcast fixups if not fragmenting (if no errors)

Change-Id: Ib2866787a42713ee5871b87b597d8f74b901044b
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-11-05 15:34:00 +00:00
Ryujiro Shibuya
3ea17d54a9 tcp: correct validity check return value
Type: fix

Signed-off-by: Ryujiro Shibuya <ryujiro.shibuya@owmobility.com>
Change-Id: Ib59bf664d8da20516d8f16d716c5e8698675da4b
2019-11-05 15:15:18 +00:00
Klement Sekera
45a95dd782 tests: support setting random seed
Log the random seed used when running tests and provide means to re-use
it in a later run.

Type: feature

Change-Id: I18d2a36ee802b901d4cca5577df41cec07f09cc0
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-11-05 13:07:48 +00:00
Jakub Grajciar
718a19b8f9 libmemif: reset number of queues on disconnect
Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: If4df47b1109ac90d4d5834b3aa7d326f6b3761d2
2019-11-05 12:55:51 +00:00
Filip Varga
16572355c9 nat: respect udp checksum
Type: fix

Change-Id: I732be02d2e2b854eb589c3fa10f980ef2dbe8dfc
Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-11-05 12:46:41 +00:00
Andrew Yourtchenko
42693521f6 tests: avoid test runner hanging on child test process join
In parallel test, the single process is spawning
a bunch of child processes running the tests,
and communicates to them. When the child process
signals that it has finished, the parent calls
child.join(). Sometimes this join never returns.
The result is a lot of defunct python processes,
and the test run just hangs.

I have seen this failure intermittently a fair bit
in a busy containerized environment, and by chance,
consistently reproduced it on a Thinkpad X280
with 8G of RAM and Ubuntu 19.04, which allowed
to diagnose it.

Type: test
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: If0a3110fc2d23e73d77c310d61c3ea90a2b53610
2019-11-05 09:06:15 +00:00
Benoît Ganne
f7f49640bb ipsec: ipsec-input: check for too-short packets
Make sure packet is big enough before processing it.
Policy matching is done speculatively but is discarded if packet is too
short.

Type: fix

Change-Id: I647db2c4e568b0d9bf2cfd5056e1b1c2e25132fe
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-11-05 08:40:54 +00:00
Dave Wallace
3a23f9e30d quic: enhance error reporting
Type: refactor

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I710d00e4a6c4356d0f00f7592bf14b55596ec6ae
2019-11-04 22:56:02 +00:00
Dave Wallace
caa52f3f93 quic: fix quicly rtt time skew
- This patch to quicly fixes an intermittent failure
  in the rtt calculation when there is a time skew

Type: fix

Change-Id: If89c47401ee75c88f0eb65ae888b6914695b2aec
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-11-04 22:46:34 +00:00
Dave Wallace
34d92ebde6 quic: remove redundant function calls
- session_transport_delete_notify() is called before
  and inside quic_connection_delete()

Type: fix

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I5c79a3269e36c4aab5aa99fdfdac06c1334f0f6f
2019-11-04 22:46:16 +00:00
Ole Troan
8f6d7a7876 nat: revert respect udp checksum
This reverts commit 0d75f783644a24b219ed79d9f9c17387783f67ca.

Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Iaf33301201897e6646eba2b4157e2a45f5fd30f2
2019-11-04 15:44:00 +00:00
Filip Tehlar
cb3cfe876b ikev2: fix traffic selector match
Type: fix

Change-Id: I81ab3dcd03f397b3d275da6cfa094e048ad92f95
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-11-04 14:03:18 +00:00
Ole Troan
a519f213f4 nat: revert fix dual-loop tcp checksum botch
This reverts commit 9654a37fac7fe2b425576eb0237b8d24ae44e1b1.

Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I93ed5a48303421de43f5494c11db2be9a3c8ce57
2019-11-04 12:52:13 +00:00
Christian Hopps
2e8b0618b1 vlib: fix for vlib_node_add_next_with_slot
- vlib_node_add_next_with_slot was not cleaning the old next node
references to the given slot when replacing it with new next node. This mostly
worked until one tried to set the slot to a previously (but not currently) used
next node for that slot.

Type: fix

Signed-off-by: Christian Hopps <chopps@labn.net>
Change-Id: I7ee607625da874e320158b80f12ddc16e377f8e9
2019-11-04 12:31:51 +00:00
IJsbrand Wijnands
bf103d99e6 mpls: number of mpls tunnel paths returns zero
The number of paths on the mpls tunnel returned through the bapi is
always zero. Doing a ntohl on a uint32 and poking it into a uint8 causes the problem.

Type: fix
Signed-off-by: IJsbrand Wijnands <ice@cisco.com>
Change-Id: I4135ad43a891e7818ca673c8067ef1f11cb34530
2019-11-04 10:51:11 +00:00
Dave Barach
9654a37fac nat: fix dual-loop tcp checksum botch
Type: fix
Fixes: 22921

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4fecce96d027c0ee1797d9d84cfab94b1ecdc02b
2019-11-04 10:47:31 +00:00
Dave Barach
983ebaa3ee build: install generated api enum and type headers
Otherwise, <api-name>.api_enum.h and <api-name>.api_types.h files are
unavailable. If plugin B needs to send an API message to plugin A,
it's out of luck.

Type: fix

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I25fdb904b5cf57727d6196fa2c0c71be68f207ed
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2019-11-04 09:38:10 +00:00
Florin Coras
2d0b2bbb97 session: fix show cli with closed session
Type: fix

Change-Id: Ifb6ead644c0273b84a5647f7923053f1db7c5a76
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-11-03 17:55:28 +00:00
Florin Coras
dd97a48d9f session: reschedule asap when snd space constrained
Type: feature

Improves fairness for sessions that are snd space or pacer constrained.

Change-Id: Ida5f523090f1dcbfb17bf5116bc7917747ac8593
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-11-02 15:17:46 -07:00
Dave Barach
a1f5a956e5 vlib: enhance the "show cli" debug CLI command
Dump the entire CLI, mp-safe commands, non-mp-safe commands, commands
which have been executed. Optionally, clear the hit counters.

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ie38fc664b7deaabc35ca35be68db7e159272f551
2019-11-02 17:12:12 +00:00
Alexander Kabaev
feda545105 vlib: Handle race in thread barrier processing
When CLIB_DEBUG is enabled, vlib_foreach_main macro asserts that
vlib_main it currently looks at is safely parked in barrier, by
checkling that vlib_main->parked_at_barrier is not 0.
Unfortunately, the check is racy - workers first increment the
atomic counter to indicate that they have reached the barrier
and _then_ set this_main->parked_at_barrier to 1. For the last
worker to suspend this opens the race - main thread is free
to execute and assert immediately after atomic counter has been
incremented, before worker gets to write to own parked_at_barrier.

Fix this by simply swapping the order of two operations.

Type: fix

Signed-off-by: Alexnader Kabaev <kan@FreeBSD.org>
Change-Id: Iae47abd6ca0be1c5413f5ecaefabc64cd7eac2ed
2019-11-01 21:57:49 -04:00
Chenmin Sun
5bec5f7860 dpdk: fix tso not properly check the 'enable-tcp-udp-checksum' option issue
Type: fix

Fix tso did not properly check the 'enable-tcp-udp-checksum' option issue
Add description of 'tso' and 'enable-tcp-udp-checksum' in startup.conf

Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: Id659067a9fa9e1db6c3f8dc533a2e90351b86831
2019-11-01 17:26:43 +00:00
Dave Wallace
f9d784b6b9 quic: fifo size is u32
- Fix cli / config fifo size to only accept u32
  size input.
- Make cli / config fifo-size input type handling
  to be the same as vpp hoststack
- Update external transfer tests to use new
  syntax with different fifo sizes for
  vpp_echo client/server and vpp.

Type: fix

Change-Id: Ia5ddb2b8d3d9908ab502352819eebeec8ac0971d
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-11-01 14:52:38 +00:00
Damjan Marion
3edd1bbe6a build: bump rdma-core version to 26.0
Type: make
Change-Id: I642cff93c4935d6ba7948f0e38761c64007ae0c2
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-01 00:09:05 +00:00
Damjan Marion
597354c1d4 build: bump nasm version to 2.14.02
Type: make
Change-Id: I9b598ce17c058709553a45524e18a64de642a8db
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-10-31 22:47:53 +00:00
Damjan Marion
1f8daefd98 build: remove obsolete dpdk patches
Type: refactor
Change-Id: I2bad8d4e7b9d7868c949856d0bbabeccb6825273
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-10-31 22:47:35 +00:00
Benoît Ganne
60ad1a59a3 dhcp: fix proxy dhcpv6 size check
Type: fix

Change-Id: Ibbb25bc530fdeaa3083c9b833a286a5d40e93c1e
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-10-31 22:46:58 +00:00
Benoît Ganne
4354317bf3 vlib: only dump 1st buffer in chain by default
Several nodes include buffers in their traces, but only the 1st. When
formatting the trace we must not try to iterate through all chained
buffers.
Default to display only the 1st buffer.

Type: fix

Change-Id: Ib3c668bbf4ab70ae68eba2ac402c7b7329825b70
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-10-31 22:46:04 +00:00
Benoît Ganne
c520fe7ab9 ipsec: fix esp trace seq number overflow
Do not copy invalid seq number if packet is too small.

Type: fix

Change-Id: I1e78f5920e9645521f57efccaf35bbf9ce0676a8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-10-31 22:30:49 +00:00
Vratko Polak
09220b8d00 misc: Use tabs in MAINTAINERS
Type: style

Change-Id: Idd15c372f43a720e18a973e78ec5ccd00e1ad709
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-31 19:01:56 +00:00
Dave Wallace
ea7d4fe148 quic: fix wrong error checking
- Revert error checking to previous ASSERT

Type: fix
Fixes: 7c7fa9066

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I6d915d88bf932c74f9b866aec3bd1531e0cb47f4
2019-10-31 18:39:45 +00:00
Florin Coras
45b7973ddd session: avoid double dispatch of new events
Type: fix

Avoid re-dispatching new events if they've just been added to the old
events linked list.

Change-Id: Ie5d0b799eae6cebb118d97204e5111eb194c0b8e
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-31 16:52:24 +00:00
Florin Coras
ba13c3b369 session: fix dispatch event logging
Type: fix

Change-Id: Icf3c73cd7eb7565ed6e1b0371da172b5408a9d36
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-31 13:42:02 +00:00
Andrew Yourtchenko
b31d39358b tests: Revert "tests: add sending SIGQUIT to vpp quit sequence"
This reverts commit 4465fe1e30556b40c9ef8a1a155aa1665102dd22.

That commit makes *every* test to send SIGQUIT to VPP when it is done,
thereby triggering the coredump if there was none.

It is most surely not what we want.

Type: test

Change-Id: I3cc4c96f44c05527d586142f8feccc2f93c3e536
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-10-31 11:47:10 +00:00
Florin Coras
3ad9847329 quic: disable failing test
Type: fix

Disable test until fixed.

Change-Id: I1f03630d126e61578c63a3536a0dd1a7b4da2b92
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-31 04:41:53 +00:00
Jieqiang Wang
b5076cbe1d acl: add missing square brackets to vat_help option in acl api
Add the missing right square brackets to remove ambiguity in
vat_help option for acl_add_replace and macip_acl_add_replace api.

Type: fix

Change-Id: I2679d8ce163d23a0e513afdfdb87434cbb673c74
Signed-off-by: Jieqiang.Wang <Jieqiang.Wang@arm.com>
2019-10-31 02:17:22 +00:00
Florin Coras
46ec6e018e tcp: track lost rxt segments in byte tracker
Type: feature

Change-Id: I18dfac9c3d2f539edf20dba64cd2b7b541154144
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-31 01:26:36 +00:00
Dave Wallace
7c7fa9066e quic: fix quicly fifo size mismatch
- This fixes an intermittent failure of the
  test_quic_ext_transfer test due to quicly
  being configured with the wrong fifo size
  which was taken from the cli or startup.conf
  file. The fifo size from the application
  context is now used when creating the
  quicly context.
- Emit an error message if the entire chunk
  of a stream is not enqueued in the svm fifo.

Type: fix

Change-Id: I03847ea7d4cd7a617b577697dfe3afa969850937
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-10-30 22:44:58 +00:00
Paul Vinciguerra
35b037fd7f vpp_config: fix typos in templates
Type: style

Change-Id: Ia435604c8c48a78054848095567f1e54d028227e
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-10-30 20:17:12 +00:00