vpp.git
5 years agoNAT44: add support for session timeout (VPP-1272) 28/14428/2
Matus Fabian [Thu, 23 Aug 2018 07:33:35 +0000 (00:33 -0700)]
NAT44: add support for session timeout (VPP-1272)

NAT44 (vanilla/simple and endpoint-dependent mode) now lazily delete expired
sessions. When inserting to session lookup hash and bucket is full, expired
session is overwritten.

Change-Id: Ib1b34959f60f0ca4f5b13525b1d41dd2f992288d
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agocmake: add missing vat plugins 96/14496/2
Damjan Marion [Mon, 27 Aug 2018 09:48:28 +0000 (11:48 +0200)]
cmake: add missing vat plugins

Change-Id: Ib61f0299c17c0f021408ab0a44c5b54f55f8a8ec
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: use lib64 for lib dir 97/14497/1
Damjan Marion [Mon, 27 Aug 2018 09:40:58 +0000 (11:40 +0200)]
cmake: use lib64 for lib dir

While not sure if this is right or not, this is what autotools do

Change-Id: I01f22281302b1383b0e69c3f03e5c8f8a8961358
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: add add_vpp_library and add_vpp_executable macros 86/14486/3
Damjan Marion [Sun, 26 Aug 2018 09:04:40 +0000 (11:04 +0200)]
cmake: add add_vpp_library and add_vpp_executable macros

Change-Id: I1382021a6f616571b4b3243ba8c8999239d10815
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: move functions to src/cmake 85/14485/2
Damjan Marion [Sun, 26 Aug 2018 08:14:52 +0000 (10:14 +0200)]
cmake: move functions to src/cmake

Change-Id: Ibcb7105fa7e3c09efdce01bccd4de235fe33ea99
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: handle api_test_plugins in add_vpp_plugin macro 84/14484/3
Damjan Marion [Sat, 25 Aug 2018 19:58:02 +0000 (21:58 +0200)]
cmake: handle api_test_plugins in add_vpp_plugin macro

Change-Id: I76a1711af0a920cce66e6dfb07d019ba505d55b7
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoioam: one api test plugin instead of five 83/14483/4
Damjan Marion [Sat, 25 Aug 2018 19:45:25 +0000 (21:45 +0200)]
ioam: one api test plugin instead of five

Change-Id: I715dade7c81f2ba6a0a5297123f588563833c3fb
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: improve add_vpp_plugin macro 82/14482/1
Damjan Marion [Sat, 25 Aug 2018 09:33:29 +0000 (11:33 +0200)]
cmake: improve add_vpp_plugin macro

Change-Id: Iffd5c45ab242a919592a1f686f7f880936b68a1a
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: add more headers to the install list 81/14481/2
Damjan Marion [Fri, 24 Aug 2018 19:36:42 +0000 (21:36 +0200)]
cmake: add more headers to the install list

Change-Id: I3a0f48381232fcac1727034aa6d2504a8d1edb04
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoFix logging to file and summary for crashed tests 65/14465/2
juraj.linkes [Fri, 24 Aug 2018 14:16:28 +0000 (16:16 +0200)]
Fix logging to file and summary for crashed tests

Logging was not being logged to log.txt
Crashed tests were not reported properly when running tests in one
process

Change-Id: Ica2d703d88351cc8a94bad86764ae4376dc79590
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
5 years agoAdd int cast to fit '.*' printf expectations 59/14359/4
Pierre Pfister [Mon, 20 Aug 2018 12:21:07 +0000 (14:21 +0200)]
Add int cast to fit '.*' printf expectations

Sometimes, compiler would throw an error:
  error: field precision specifier ‘.*’ expects argument of type
  ‘int’, but argument 5 has type ‘u64 {aka long unsigned int}’

This change adds the requested cast.

Change-Id: I43edeac0ee565a1fcee38b9d2942e49c8dd63116
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
5 years agovcl: remove unused binary api handlers 71/14471/5
Florin Coras [Fri, 24 Aug 2018 19:59:56 +0000 (12:59 -0700)]
vcl: remove unused binary api handlers

Change-Id: Ifc36e3934574ba479f71157f797b2d0745b1d100
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agosession: fix coverity warnings 74/14474/1
Florin Coras [Fri, 24 Aug 2018 20:58:49 +0000 (13:58 -0700)]
session: fix coverity warnings

Change-Id: I2a25bba675fc9c84e5d391533e92b9a041637405
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agosession: add support for multiple app workers 76/14176/20
Florin Coras [Mon, 13 Aug 2018 06:50:53 +0000 (23:50 -0700)]
session: add support for multiple app workers

Refactor session layer to support multiple workers per application.

Change-Id: Ie67354688d396449d14bbbb8c56050206e307cd8
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoClean up packet tracer, especially "clear trace" 31/14331/3
Dave Barach [Fri, 17 Aug 2018 22:29:07 +0000 (18:29 -0400)]
Clean up packet tracer, especially "clear trace"

There are multiple trace enablement schemes. It's easy to end up in
vlib_add_trace with tracing disabled insofar as the packet tracer is
concerned. When that happens, return the address of a per-system
dummy trace record.

Change-Id: I929391b8be4ed57e26e291afdc509a15f09a3160
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoMPLS tunnel: don't reuse hw-indices 61/14461/2
Neale Ranns [Fri, 24 Aug 2018 12:43:35 +0000 (05:43 -0700)]
MPLS tunnel: don't reuse hw-indices

this is the same behaviour as other tunnel types

Change-Id: I6439f692bc2bc18f12eea599e0e06b9eaa5eb128
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agorx-placement: Add API call for interface rx-placement 45/14445/4
Mohsin Kazmi [Thu, 23 Aug 2018 16:28:11 +0000 (18:28 +0200)]
rx-placement: Add API call for interface rx-placement

Change-Id: I9228ce29e9d2fc862a2d076b4072bcdd728d6dd1
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agol2:bvi-dont aceess sup hw int for broadcasts 32/14432/3
Eyal Bari [Thu, 23 Aug 2018 09:16:41 +0000 (12:16 +0300)]
l2:bvi-dont aceess sup hw int for broadcasts

sup hw int is needed only for unicast validation

Change-Id: I5e5753c09d1c16fdb2435b4db5628a2379fe6f96
Signed-off-by: Eyal Bari <ebari@cisco.com>
5 years agoRename struct mallinfo -> struct dlmallinfo 52/14452/2
Dave Barach [Thu, 23 Aug 2018 21:08:44 +0000 (17:08 -0400)]
Rename struct mallinfo -> struct dlmallinfo

Also: don't #include /usr/include/malloc.h in dlmalloc.h

Change-Id: Ic73ff8862cc8aba371488b912255e28dd96374ff
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agocmake: fix -DVPP_USE_DLMALLOC=OFF 49/14449/2
Damjan Marion [Thu, 23 Aug 2018 20:21:33 +0000 (22:21 +0200)]
cmake: fix -DVPP_USE_DLMALLOC=OFF

Change-Id: Ib8dc37b1a39c92a0c7b22cebdf985c6afa8229d9
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agotcp: fix cc recovery re-entry and persist timer pop 53/14453/8
Florin Coras [Thu, 23 Aug 2018 23:27:05 +0000 (16:27 -0700)]
tcp: fix cc recovery re-entry and persist timer pop

Change-Id: I89e8052f2d2c36dd3de5255c4ee570722dc58227
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agosession: fix retrieval of local sessions if app is detached 54/14454/1
Florin Coras [Fri, 24 Aug 2018 02:27:03 +0000 (19:27 -0700)]
session: fix retrieval of local sessions if app is detached

Change-Id: I0f5c1dc99610b65646c3b5cf8da7aea273371e4d
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agobihash: remove unused counters 48/14448/2
Damjan Marion [Thu, 23 Aug 2018 19:58:05 +0000 (21:58 +0200)]
bihash: remove unused counters

Change-Id: I1f0aae16e4ace850d7d79b9c2c644a3e0d002636
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoclib_mem_is_heap_object() needs to recognize sys_alloc segments 42/14442/2
Dave Barach [Thu, 23 Aug 2018 15:23:00 +0000 (11:23 -0400)]
clib_mem_is_heap_object() needs to recognize sys_alloc segments

Preferably without mistaking -pie (address randomized) segment
addresses for heap objects.

Change-Id: Idca6b966f14b1caf6b4637843fe407dbc5017535
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agocmake: keep 'make test-debug' on autotools for now 44/14444/2
Damjan Marion [Thu, 23 Aug 2018 15:57:20 +0000 (17:57 +0200)]
cmake: keep 'make test-debug' on autotools for now

Change-Id: Ia073a0e13da174d434f6562efe0833ee35ea40e2
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agosctp: https://jira.fd.io/browse/VPP-1396 36/14436/2
Marco Varlese [Thu, 23 Aug 2018 12:38:57 +0000 (14:38 +0200)]
sctp: https://jira.fd.io/browse/VPP-1396

Reducing the number of clients and mbytes transferred to make the test a
functional test rather than a stress one.

Change-Id: I715ab5db087b96c40da37d4221f3030b10519fd0
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
5 years agoip4: rework rewrite node to use vlib_buffer_enqueue_to_next() 29/14429/4
Damjan Marion [Thu, 23 Aug 2018 07:49:46 +0000 (09:49 +0200)]
ip4: rework rewrite node to use vlib_buffer_enqueue_to_next()

- perf improvement is around 3 clock per packet
- it properly prefetches ip header and rewrite area

Credits to zhiyong.yang@intel.com for spotting that in some cases
rewrite area is not prefetched.

Change-Id: Ie02913de7bd7f42b7df2617fb5fa87c74ab53c23
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoCSIT-1139: Implement parallel test execution 91/13491/19
juraj.linkes [Mon, 16 Jul 2018 12:22:01 +0000 (14:22 +0200)]
CSIT-1139: Implement parallel test execution

The implementation of parallel test execution in VPP Test Framework.
- VPPTestCase test methods are grouped together
- tests are running in separate processes
- VPP instances spawned by tests are assigned to different cores
- output from these processes is redirected through pipes and printed
out testcase by testcase
- TEST_JOBS env var is used to specify the number of parallel processes
- improved test summary
- a bit of code cleanup

Change-Id: I9ca93904d9fe2c3daf980500c64a8611838ae28c
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
5 years agoCMake: Add Cmake support for Vat 33/14433/4
Mohsin Kazmi [Wed, 22 Aug 2018 08:54:42 +0000 (10:54 +0200)]
CMake: Add Cmake support for Vat

Change-Id: I3e8efce9eacba46ec9913d4024d66f00fe326095
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agocoverity: l2 arp termination dump 34/14434/1
Mohsin Kazmi [Thu, 23 Aug 2018 10:24:19 +0000 (12:24 +0200)]
coverity: l2 arp termination dump

This patch resolves the coverity warning.

Change-Id: I3f5e664b442fa9bcafd28c67283596570dc1244d
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agofix dpdk_plugin.so load failure with DPDK 18.08 00/14300/4
Lijian Zhang [Thu, 16 Aug 2018 08:43:32 +0000 (16:43 +0800)]
fix dpdk_plugin.so load failure with DPDK 18.08

load_one_plugin:189: Loaded plugin: abf_plugin.so (ACL based Forwarding)
load_one_plugin:189: Loaded plugin: acl_plugin.so (Access Control Lists)
load_one_plugin:189: Loaded plugin: avf_plugin.so (Intel Adaptive Virtual Function (AVF) Device Plugin)
load_one_plugin:191: Loaded plugin: cdp_plugin.so
load_one_plugin:145: /home/lijian/tasks/_ipsum/vpp/build-root/install-vpp-native/vpp/lib64/vpp_plugins/dpdk_plugin.so: undefined symbol: mnl_socket_close
load_one_plugin:146: Failed to load plugin 'dpdk_plugin.so'
load_one_plugin:189: Loaded plugin: flowprobe_plugin.so (Flow per Packet)
load_one_plugin:189: Loaded plugin: gbp_plugin.so (Group Based Policy)

Change-Id: I4f885f2bd3e548dbb2f7afec3363ed8ae09b3eca
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
5 years agosrv6-ad: Adding support for L2 traffic 55/13355/5
Francois Clad [Wed, 4 Jul 2018 13:35:29 +0000 (15:35 +0200)]
srv6-ad: Adding support for L2 traffic

Change-Id: I3c14555113c2b58f3be629600051beb7f6716cfe
Signed-off-by: Francois Clad <fclad@cisco.com>
5 years agosrv6-ad: Adding test cases 47/13747/6
Francois Clad [Thu, 26 Jul 2018 17:11:09 +0000 (13:11 -0400)]
srv6-ad: Adding test cases

Change-Id: I32704267cf2ff6628f86335a5e7da1c3b116df1d
Signed-off-by: Francois Clad <fclad@cisco.com>
5 years agoIPIP and SIXRD tunnels create API needs table-IDs not fib-indexes 20/14420/2
Neale Ranns [Wed, 22 Aug 2018 07:21:14 +0000 (00:21 -0700)]
IPIP and SIXRD tunnels create API needs table-IDs not fib-indexes

Change-Id: Ifaef196a24fa9b6924f2b9692318f69763cee5e1
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agoshow command for lookup DPOs 21/14421/2
Neale Ranns [Wed, 22 Aug 2018 16:50:25 +0000 (09:50 -0700)]
show command for lookup DPOs

Change-Id: I4907f48e6c4a4e91343fd0d4fface00f09e5fa2b
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agol2:remove unused members of input, output configs 17/14417/2
Eyal Bari [Wed, 22 Aug 2018 14:02:46 +0000 (17:02 +0300)]
l2:remove unused members of input, output configs

reorder structs for less padding

Change-Id: Id05123f5bac870e1c585b3aa2177d9e3a6f8d70b
Signed-off-by: Eyal Bari <ebari@cisco.com>
5 years agoConsolidate the [un]format_mac_address implementations 14/14414/2
Neale Ranns [Wed, 22 Aug 2018 11:27:15 +0000 (04:27 -0700)]
Consolidate the [un]format_mac_address implementations

Change-Id: Ic4c42c5610a827234e6582501f0ddcba47aa34ee
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agobihash: add support for reuse of expired entry when bucket is full (VPP-1272) 88/14388/2
Matus Fabian [Tue, 21 Aug 2018 10:15:50 +0000 (03:15 -0700)]
bihash: add support for reuse of expired entry when bucket is full (VPP-1272)

Applications such as NAT that dynamically create entries require these entries to expire after some time.
Bihash user can now lazily delete expired entries. When inserting and bucket is full, expired entry is overwritten.

Change-Id: I6852305df399b546159407f1729c856afde5a634
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoNAT: update nat_show_config_reply API (VPP-1403) 11/14411/2
Matus Fabian [Wed, 22 Aug 2018 08:27:10 +0000 (01:27 -0700)]
NAT: update nat_show_config_reply API (VPP-1403)

Change-Id: I85383e428cb54c4c09ab387811dd6390f7c61d97
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agosrv6-ad: Adding rewrite counters 54/13354/6
Francois Clad [Wed, 4 Jul 2018 11:46:46 +0000 (13:46 +0200)]
srv6-ad: Adding rewrite counters

Change-Id: I0af61b27f3336861af2ad5e5b1053c61607b970c
Signed-off-by: Francois Clad <fclad@cisco.com>
5 years agoRefactor vnet.am to expose arp feature 74/14374/3
Hongjun Ni [Tue, 21 Aug 2018 10:52:01 +0000 (18:52 +0800)]
Refactor vnet.am to expose arp feature

vppsb router plugin need include arp.h file.

Change-Id: Id8137948213f3f10a5390811052ed73f6112965e
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
5 years agoCMake: install .json files in ROOT/share/... for papi. 97/14397/2
Neale Ranns [Tue, 21 Aug 2018 13:34:00 +0000 (06:34 -0700)]
CMake: install .json files in ROOT/share/... for papi.

Change-Id: I1a5325c5f026ba5e8d89608c285e934a6e1c16e6
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agoVPP-1268: Add option for memory channels DPDK uses 63/13363/6
Jessica Tallon [Thu, 5 Jul 2018 13:59:36 +0000 (15:59 +0200)]
VPP-1268: Add option for memory channels DPDK uses

This adds a `num-mem-channels` option for DPDK enabling support for
choosing the number of memory channels used.

Change-Id: I1663dd866ac60592b6dd02261af66d87c64acdb1
Signed-off-by: Jessica Tallon <tsyesika@igalia.com>
5 years agodpdk: bump DPDK version to 18.08 54/14154/3
Damjan Marion [Sat, 11 Aug 2018 22:26:55 +0000 (00:26 +0200)]
dpdk: bump DPDK version to 18.08

Change-Id: Ia1b188492138a0ca0e95daf6eb8e761e8db081ef
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoSUSE: rpm-packaging fixes 86/14386/4
Marco Varlese [Tue, 21 Aug 2018 09:51:19 +0000 (11:51 +0200)]
SUSE: rpm-packaging fixes

Change-Id: Ic7ddc34bbb2fe414d41a083efd8caf35a12488ab
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
5 years agoNASM: update to latest stable 2.13.03 62/14362/4
Marco Varlese [Mon, 20 Aug 2018 12:41:20 +0000 (14:41 +0200)]
NASM: update to latest stable 2.13.03

Change-Id: I04cdd296bc3de0460308351d0bbb00d7cbbf023e
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
5 years agoCMake: stats clients depend on the .api header generation 92/14392/1
Neale Ranns [Tue, 21 Aug 2018 12:32:02 +0000 (05:32 -0700)]
CMake: stats clients depend on the .api header generation

Change-Id: I5bdc57a8dd13ef34799052cc642fc45b78bafdc6
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agoMakefile: opensuse 15.0 reporting change 69/14369/2
Ed Kern [Mon, 20 Aug 2018 17:05:03 +0000 (11:05 -0600)]
Makefile: opensuse 15.0 reporting change

A change in /etc/os-release reporting for opensuse leap15.0
means this change is required so that builds are allowed.

Change-Id: I35fb55a4c63b5d6d9d313c7e75ff6b039280df96
Signed-off-by: Ed Kern <ejk@cisco.com>
5 years agoAdd Dockerfiles for run/build. 32/14332/3
Ed Warnicke [Wed, 15 Aug 2018 16:43:54 +0000 (11:43 -0500)]
Add Dockerfiles for run/build.

build-root/docker/build/ contains Dockerfiles for building vpp

build-root/docker/run. contains Dockerfiles for creating
Docker containers for runnining vpp.

xenial, bionic, and centos7 are supported

Change-Id: I90dd96ed9e01da14eead0395e597219717eead88
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
5 years agoEnable storing state in flowhash hash tables 56/14356/2
Pierre Pfister [Mon, 20 Aug 2018 11:48:15 +0000 (13:48 +0200)]
Enable storing state in flowhash hash tables

Flowhash user can now rely on the table to be initialized
to zero and know when an entry is cleaned up by the
garbage collector.

This is usefull to store state in flowhash entries without
the need for callbacks when an entry timeouts.

Change-Id: Ieece6b7277241f84ea3f2473d0771c6ee8ce460c
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
5 years agomake test: remove excessive prints 53/14353/2
Klement Sekera [Mon, 20 Aug 2018 09:06:37 +0000 (11:06 +0200)]
make test: remove excessive prints

Change-Id: Iad57387991d4330d7797cb85fef1157a36e8e897
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agoCMake: generate .json from .api files 66/14366/3
Neale Ranns [Mon, 20 Aug 2018 14:41:52 +0000 (07:41 -0700)]
CMake: generate .json from .api files

Change-Id: Ic18aa0fb42a72b5e0ebbfbebdefc7582cb46b5ea
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agocmake: add packages for opensuse 55/14355/2
Marco Varlese [Mon, 20 Aug 2018 10:21:30 +0000 (12:21 +0200)]
cmake: add packages for opensuse

Change-Id: I6fd9090c59a8b2b3bdfb0c3a217e69c513bfaeed
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
5 years agoDetect support for memfd_create at compilation 64/14364/3
Pierre Pfister [Mon, 20 Aug 2018 12:59:45 +0000 (14:59 +0200)]
Detect support for memfd_create at compilation

Compilation was failing on systems without memfd_create.
This uses check_c_source_compiles to check whether the memfd_create
function is available on the system.

Credits to Damjan for his help troubleshooting.

Change-Id: I136d9504d7978e3a09438d0d76b2de1042702b2c
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
5 years agoCMakeLists file for vpp-api 57/14357/2
Neale Ranns [Mon, 20 Aug 2018 12:07:13 +0000 (05:07 -0700)]
CMakeLists file for vpp-api

Change-Id: I140e5df0a4a09dabafea8189586c3347952598a8
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agovxlan_gpe_encap: fix packet len error 04/14304/2
Zhiyong Yang [Fri, 17 Aug 2018 08:36:50 +0000 (04:36 -0400)]
vxlan_gpe_encap: fix packet len error

Change-Id: I294be184764b45777d6e5e44f5d742b2c8732de4
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
5 years agocmake: highlight warning and error messages 41/14341/1
Damjan Marion [Sat, 18 Aug 2018 12:36:57 +0000 (14:36 +0200)]
cmake: highlight warning and error messages

Change-Id: Id4b73368382b5e78c138987fe092429af5cb0afd
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agocmake: DPDK rte_config.h parsing 40/14340/1
Damjan Marion [Sat, 18 Aug 2018 11:42:28 +0000 (13:42 +0200)]
cmake: DPDK rte_config.h parsing

Change-Id: I53cad8e7787a132a5d6bacd5fda3fe67b7d59b44
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoCMake as an alternative to autotools (experimental) 51/14151/24
Damjan Marion [Mon, 30 Jul 2018 10:45:07 +0000 (12:45 +0200)]
CMake as an alternative to autotools (experimental)

Change-Id: Ibc59323e849810531dd0963e85493efad3b86857
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agol2: arp termination dump 81/14181/4
Mohsin Kazmi [Mon, 13 Aug 2018 17:17:54 +0000 (19:17 +0200)]
l2: arp termination dump

VPP-1368

Change-Id: I6373f76ba87184a91b517712eafb4ee1f5cea59e
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agoVPP-1392: VXLAN fails with IP fragmentation 97/14297/3
Ole Troan [Thu, 16 Aug 2018 20:08:49 +0000 (22:08 +0200)]
VPP-1392: VXLAN fails with IP fragmentation

Not only is it wasteful to send all fragments back through ip4-lookup, but
it doesn't work with tunnel mechanisms that don't have IP enabled on their
payload side.

Change-Id: Ic92d95982dddaa70969a2a6ea2f98edec7614425
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agoFix a bug in function pipe_rx 43/14243/3
Lijian Zhang [Mon, 13 Aug 2018 08:34:21 +0000 (16:34 +0800)]
Fix a bug in function pipe_rx

GCC 7 found this issue with a compiling warning,
and this bug has been confirmed by module owner.

Change-Id: If29e857b3a87f91f08674aee6993b075fcff87e7
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
5 years agodocs: Moved installing up a level, removed guides. 19/14319/2
John DeNisco [Fri, 17 Aug 2018 18:25:15 +0000 (14:25 -0400)]
docs: Moved installing up a level, removed guides.

Change-Id: Ie4b2939b693698585f1f2d12391a0009e80bac0b
Signed-off-by: John DeNisco <jdenisco@cisco.com>
5 years agolacp: issue with slave interface admin up after it is added to the bond group 16/14316/2
Steven [Fri, 17 Aug 2018 16:44:08 +0000 (09:44 -0700)]
lacp: issue with slave interface admin up after it is added to the bond group

When the slave interface is admin up after it is added to the bond group,
lacp does not send lacp pdu's to the interface because its periodic timer
is not running.

The issue was the slave interface's variables got reset after the state
machines were initialized.

Change-Id: I2942556ce29a4acc97db3be40293e69bed7b6679
Signed-off-by: Steven <sluong@cisco.com>
5 years agoUpdate AArch64 CSIT machines into FD.io VPP docs 73/14273/2
Lijian Zhang [Tue, 7 Aug 2018 07:34:45 +0000 (15:34 +0800)]
Update AArch64 CSIT machines into FD.io VPP docs

The outlook will appear as below.
The FD.io CSIT is implemented with below platforms:

        x86/64
        ARM-AArch64

                Huawei TaiShan 2280
                Marvell MACCHIATObin

Change-Id: Ie84a99c53a0fc2186ea6992baca9558b6d96c7f8
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
5 years agodocs: Rework the VPP progressive Tutorial. 95/14295/6
John DeNisco [Thu, 16 Aug 2018 17:50:02 +0000 (13:50 -0400)]
docs: Rework the VPP progressive Tutorial.

Change-Id: If5b0d07ea90d978c6b1f11210a661876b7929653
Signed-off-by: John DeNisco <jdenisco@cisco.com>
5 years agoAdd psutil to testing virtualenv 01/14301/3
juraj.linkes [Fri, 17 Aug 2018 06:42:40 +0000 (08:42 +0200)]
Add psutil to testing virtualenv

Change-Id: I650c9f226bcdc6328a7b4ff2dc4bd20cea8a512a
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
5 years agooptimize init_server to reduce session overhead 56/14156/7
Ping Yu [Mon, 13 Aug 2018 10:20:00 +0000 (06:20 -0400)]
optimize init_server to reduce session overhead

move un-necessary session based operation to listener
split orignal openssl ctx to be session based ctx and listen ctx

Change-Id: Id6c54f47b0e2171fd8924a45efcd5266ce5402d5
Signed-off-by: Ping Yu <ping.yu@intel.com>
5 years agotls: add maintainers 93/14293/2
Florin Coras [Thu, 16 Aug 2018 16:29:36 +0000 (09:29 -0700)]
tls: add maintainers

Change-Id: I948739642f8fe0b6219ffcd8232a9ad486cabc4b
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agovlibapi: validate private segment rotor prior to use 99/14299/2
Florin Coras [Thu, 16 Aug 2018 22:45:34 +0000 (15:45 -0700)]
vlibapi: validate private segment rotor prior to use

If the dead client scan removes the rotor position we're about to check
next, we end up outside the private registration pool's bounds.

Change-Id: If4e715593deeac4c06ae6b3fededc1965b042094
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agovcl: unset fifo events only in read/write 98/14298/5
Florin Coras [Thu, 16 Aug 2018 21:57:31 +0000 (14:57 -0700)]
vcl: unset fifo events only in read/write

Avoids accumulation of io event messages when the receiver is slow to
read.

Change-Id: I3a713d339a6ac0781c010be1fbad5a7963ab02c6
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agofix compiling warnings with GCC 44/14244/2
Lijian Zhang [Tue, 7 Aug 2018 03:11:58 +0000 (11:11 +0800)]
fix compiling warnings with GCC

GCC 7 plus Ubuntu-16.04 default ccache 3.2.4 reports warnings on switch case fall-through code,
which is commonly seen in DPDK code, which will cause image building failure finally.
It requires newer ccache version to support -Wimplicit-fallthrough.
To suppress the warning, if GCC is version 7 or higher, and it's old ccache version,
will disable the fall-through check.

dpdk-18.05/drivers/net/ark/ark_ethdev_rx.h:39:0,
                  from dpdk-18.05/drivers/net/ark/ark_ethdev_rx.c:36:
dpdk-18.05/arm64-armv8a-linuxapp-gcc/include/rte_mbuf.h: In function ‘rte_pktmbuf_alloc_bulk’:
dpdk-18.05/arm64-armv8a-linuxapp-gcc/include/rte_mbuf.h:1292:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
     idx++;
     ~~~^~

Change-Id: I4d12492471fadef9d349ba9e853a6799512f76f5
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
5 years agoFix a segment fault issue in TLS 90/14290/1
Ping Yu [Thu, 16 Aug 2018 23:11:05 +0000 (19:11 -0400)]
Fix a segment fault issue in TLS

The root cause is it uses a dangling reference after memory move
Need to call session_alloc first, then use index to get the app
listener point

Change-Id: If5b7e0d6ddc761e5327660c47ce620e375319b4d
Signed-off-by: Ping Yu <ping.yu@intel.com>
5 years agoEdit some warning messages in vpp-api client 75/14275/2
Ondrej Fabry [Thu, 16 Aug 2018 06:36:19 +0000 (08:36 +0200)]
Edit some warning messages in vpp-api client

- fix one typo: cnacel -> cancel
- edit log about returned value to be consistent with others

Change-Id: I09560eee8a9da361fa51e35f316d44361292bdb2
Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
5 years agodpdk: fix rss hash function handling 86/14286/2
Damjan Marion [Thu, 16 Aug 2018 11:24:30 +0000 (13:24 +0200)]
dpdk: fix rss hash function handling

DPDK 18.08 verifies if all set bits are supported and fails if not....

Change-Id: Ia87242fcda11147dff3bebe2e2bef32f0a8891fb
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoVPP-1386: fix wrong ip address of hash key for creating user in unknown protocol 50/14150/2
shubing guo [Sat, 11 Aug 2018 06:34:31 +0000 (14:34 +0800)]
VPP-1386: fix wrong ip address of hash key for creating user in unknown protocol

Change-Id: I6239e930a8805207f8e42d15e8b17d444047e3f3
Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
5 years agotcp: add tcp_error.def to installed headers list 78/14178/2
Florin Coras [Mon, 13 Aug 2018 06:55:58 +0000 (23:55 -0700)]
tcp: add tcp_error.def to installed headers list

Change-Id: I38351900bad9d727e7df6117597da488dbf5e12c
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoRemove client_index field from replies in API 40/14240/3
Ondrej Fabry [Wed, 15 Aug 2018 06:46:46 +0000 (08:46 +0200)]
Remove client_index field from replies in API

- replies should not need to contain client_index since
  it is used to identify sender of requests to VPP

Change-Id: Iece3853b3f020054ee1652b149d0cf8d9580db4e
Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
5 years agoNAT44: fix next_src_nat (VPP-1384) 04/14204/2
Matus Fabian [Tue, 14 Aug 2018 11:21:26 +0000 (04:21 -0700)]
NAT44: fix next_src_nat (VPP-1384)

Use rx_fib_index instead of sm->inside_fib_index for session lookup key.

Change-Id: I2d6cce5b9376fa8ac4d75a9bbfa8498be0fd1493
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoVPP-1387:foreach outside address vector to find correct index when free outside addre... 65/14165/2
shubing guo [Mon, 13 Aug 2018 09:16:46 +0000 (17:16 +0800)]
VPP-1387:foreach outside address vector to find correct index when free outside address and port

Change-Id: Ie5452350a8ebe2c1b62085fcab50dbc0138d3ae2
Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
5 years agoNAT44: fix bug in snat_interface_add_del (VPP-1380) 06/14106/2
Matus Fabian [Thu, 9 Aug 2018 12:15:19 +0000 (05:15 -0700)]
NAT44: fix bug in snat_interface_add_del (VPP-1380)

Should not enable nat44-hairpinning node in deterministic mode

Change-Id: I5790323a6842ee71a62c6c91c49166a2839eac12
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoNAT64: fix TCP session expire (VPP-1390) 07/14207/2
Matus Fabian [Tue, 14 Aug 2018 12:14:55 +0000 (05:14 -0700)]
NAT64: fix TCP session expire (VPP-1390)

Add missing call of nat64_tcp_session_set_state to set TCP session state.

Change-Id: Ifd297ea3ffe20870e1e34a95449b5c9404ec13eb
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoFix context field position in API definition 02/14202/2
Ondrej Fabry [Tue, 14 Aug 2018 10:39:40 +0000 (12:39 +0200)]
Fix context field position in API definition

- context should be first field for reply messages,
  just like it is for all other 545 replies

Change-Id: Ib291036d3389dbc26c8e9194966d01cab81534aa
Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
5 years agoRun interior graph nodes before process nodes 22/14222/2
Dave Barach [Tue, 14 Aug 2018 17:47:58 +0000 (13:47 -0400)]
Run interior graph nodes before process nodes

Reduces the chance of tripping over vectors in flight, especially in
single-core cases.

Change-Id: I132cdd3689f8e634f9a983af57219503817b8560
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoMake vagrant work behind a proxy 48/14148/2
Kyle Mestery [Fri, 10 Aug 2018 21:32:13 +0000 (16:32 -0500)]
Make vagrant work behind a proxy

Without this change, I cannot get the in-tree VPP Vagrant to work behind
a proxy. This commit fixes that by ensuring when we run sudo we're passing
environment variables, amongst some other cleanups.

Change-Id: Ica98a1238d40e6e6ccf80c472f52559c95af52f0
Signed-off-by: Kyle Mestery <mestery@mestery.com>
5 years agoDOCS: Moved multiarch and build system, Incorprated Scott's changes 39/14239/2
John DeNisco [Tue, 14 Aug 2018 20:04:09 +0000 (16:04 -0400)]
DOCS: Moved multiarch and build system, Incorprated Scott's changes

Change-Id: I5a57846db2d4faac1aa24db4629b612657f59afb
Signed-off-by: John DeNisco <jdenisco@cisco.com>
5 years agoDOCS: Updated startup.conf parameters 09/14209/2
andrew [Tue, 14 Aug 2018 13:35:42 +0000 (09:35 -0400)]
DOCS: Updated startup.conf parameters

Change-Id: Id1f4ff7409e8a833b8f7e6030d7287d8c1274c2d
Signed-off-by: andrew <andrew.olechtchouk@gmail.com>
5 years agoreduce polling and resume overhead by checking if inflight request exists 63/14163/3
Ping Yu [Mon, 13 Aug 2018 14:26:26 +0000 (10:26 -0400)]
reduce polling and resume overhead by checking if inflight request exists

Change-Id: I0777a00f0cc082bab3348be8ec0be39faa50ffed
Signed-off-by: Ping Yu <ping.yu@intel.com>
5 years agoneighbor advertisement must with target_link option 87/14187/3
ahdj007 [Tue, 14 Aug 2018 02:35:43 +0000 (10:35 +0800)]
neighbor advertisement must with target_link option

Change-Id: Ic20eea8f2fd19dd3c1728a1f7c622ef0c9728f81
Signed-off-by: ahdj007 <dong.juan1@zte.com.cn>
5 years agoDOCS: Cleanup Getting Started 84/14184/1
John DeNisco [Mon, 13 Aug 2018 21:00:06 +0000 (17:00 -0400)]
DOCS: Cleanup Getting Started

Change-Id: I4766773779f8d5c30a24bfed48090d7305c80ec5
Signed-off-by: John DeNisco <jdenisco@cisco.com>
5 years agoclassify_add_del_session API: Use more descriptive docstring (VPP-1385) 43/14143/2
Juraj Sloboda [Fri, 10 Aug 2018 19:23:02 +0000 (21:23 +0200)]
classify_add_del_session API: Use more descriptive docstring (VPP-1385)

Change-Id: I30788c0dd1ee012e786bb3127bf2743ab0bfdc70
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
5 years agoMultiarch for ip4 forwarding nodes 52/14152/3
Damjan Marion [Sat, 11 Aug 2018 20:10:29 +0000 (22:10 +0200)]
Multiarch for ip4 forwarding nodes

Change-Id: I68b55fc641da9dacc3343628b3e0cf77d3533313
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoMultiarch handling in different constructor macros 47/14147/8
Damjan Marion [Fri, 10 Aug 2018 20:39:11 +0000 (22:39 +0200)]
Multiarch handling in different constructor macros

This significantly reduces need for

...

in multiarch code. Simply constructor macros will jost create static unused
entry if CLIB_MARCH_VARIANT is defined and that will be optimized out by
compiler.

Change-Id: I17d1c4ac0c903adcfadaa4a07de1b854c7ab14ac
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agodpdk: support for DPDK 18.08 53/14153/2
Damjan Marion [Sat, 11 Aug 2018 22:26:45 +0000 (00:26 +0200)]
dpdk: support for DPDK 18.08

Change-Id: If1b93341c222160b9a08f127620c024620e55c37
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoVPP-1381: Fix the incorrect if condition when delete session for static mapping 23/14123/2
shubing guo [Fri, 10 Aug 2018 05:59:50 +0000 (13:59 +0800)]
VPP-1381: Fix the incorrect if condition when delete session for static mapping
-- The session should not be deleted when either ip address or port doesn't same with static mapping.

Change-Id: I09ab7379947654d2780a8c40c5340ce430541b12
Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
5 years agoMultiversioning: Device (tx) function constructor 54/13654/4
Mohsin Kazmi [Mon, 23 Jul 2018 12:45:57 +0000 (14:45 +0200)]
Multiversioning: Device (tx) function constructor

Change-Id: I39f87ca161c891fb22462a23188982fef7c3243f
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agoavf: fix prefetch bug 46/14146/2
Damjan Marion [Fri, 10 Aug 2018 20:36:13 +0000 (22:36 +0200)]
avf: fix prefetch bug

Change-Id: I4e774dc53b08746cd4ab42393f33676dcc78e791
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoemacs skeletons: add quad/single, avx2/avx512 support 45/14145/2
Dave Barach [Fri, 10 Aug 2018 20:22:48 +0000 (16:22 -0400)]
emacs skeletons: add quad/single, avx2/avx512 support

Change-Id: Ib8095ad69620308d6199ab030a754ee45f92e59b
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoIP fragmentation buffer chains, part 2. 39/14139/4
Ole Troan [Fri, 10 Aug 2018 12:39:48 +0000 (14:39 +0200)]
IP fragmentation buffer chains, part 2.

Change-Id: I8d1072cf9ff9f502302fd906c5590e0f3698dc60
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agovcl: support for eventfd mq signaling 22/13922/25
Florin Coras [Thu, 2 Aug 2018 17:45:44 +0000 (10:45 -0700)]
vcl: support for eventfd mq signaling

- support eventfd based mq signaling. Based on configuration, vcl
epoll/select can use either condvars or epoll on mq eventfds.
- add vcl support for memfd segments
- vpp explicitly registers cut-through segments with apps/vcl
- if using eventfd, make ldp allow one call to libc_epoll_create. Needed
for the message queue epfd
- update svm_queue_t to allow blocking calls with eventfd signaling.

Change-Id: I064151ac370bbe29bb16c968bf4e3659c8286bea
Signed-off-by: Florin Coras <fcoras@cisco.com>