vpp.git
6 years agosock api: add infra for bootstrapping shm clients 93/9893/10
Florin Coras [Tue, 19 Dec 2017 12:50:01 +0000 (04:50 -0800)]
sock api: add infra for bootstrapping shm clients

- add function to sock client that bootstraps shm api
- allow sock clients to request custom shm ring configs

Change-Id: Iabc1dd4f0dc8bbf8ba24de37f4966339fcf86107
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoUnify and cleanup usage of hash_set/unset_mem by various tunnels 53/9953/3
John Lo [Thu, 4 Jan 2018 21:39:42 +0000 (16:39 -0500)]
Unify and cleanup usage of hash_set/unset_mem by various tunnels

Move the functions hash_set_key_copy() and hash_unset_key_free()
which are dupilicated in various tunnel support code modules to
hash.h as hash_set_mem_alloc() and hash_unset_mem_free() to be
used by all.

Change-Id: I40723cabe29072ab7feb1804c221f28606d8e4fe
Signed-off-by: John Lo <loj@cisco.com>
6 years agoAdd support for 464XLAT NAT44 mode (VPP-1045) 26/9626/5
Juraj Sloboda [Tue, 19 Dec 2017 01:09:32 +0000 (02:09 +0100)]
Add support for 464XLAT NAT44 mode (VPP-1045)

Change-Id: I24e7a26972bbbfcea100292b212b29ae7a349335
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
6 years agoMAP: Add RFC6052 mapping to MAP-T 81/9281/8
Ole Troan [Wed, 8 Nov 2017 10:10:54 +0000 (11:10 +0100)]
MAP: Add RFC6052 mapping to MAP-T

Change-Id: I2e311f8b7f50133678b9172e8d071826af491609
Signed-off-by: Ole Troan <ot@cisco.com>
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
6 years agoVPP-1115 Fix a debug log mistake when create AF_PACKET socket 55/9955/1
zhaoqingling [Fri, 5 Jan 2018 05:33:37 +0000 (13:33 +0800)]
VPP-1115 Fix a debug log mistake when create AF_PACKET socket

Change-Id: Id6607adbe5da8ae8472dde8bb442ca5f68f6d84f
Signed-off-by: zhaoqingling <zhao.qingling@zte.com.cn>
6 years agoVOM: NAT coverity found bugs 45/9945/1
Neale Ranns [Thu, 4 Jan 2018 09:11:44 +0000 (01:11 -0800)]
VOM: NAT coverity found bugs

Change-Id: Ic55ad2e0a1435f552ce84ed1a9b1981191bc178b
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoUpdate package version 38/9938/1
Dave Wallace [Wed, 3 Jan 2018 22:09:05 +0000 (17:09 -0500)]
Update package version

Change-Id: If16943e564b11ff7ac456b16896c62db1152d6dd
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
6 years agoNAT64: free port when dynamic BIB deleted (VPP-1107) 72/9872/2 v18.04-rc0
Matus Fabian [Tue, 19 Dec 2017 11:43:07 +0000 (03:43 -0800)]
NAT64: free port when dynamic BIB deleted (VPP-1107)

Change-Id: Id897ed61a26a4069678ed4ddac1ba28bf32809c3
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agoVOM: NAT updates 20/9920/1
Neale Ranns [Wed, 20 Dec 2017 16:49:51 +0000 (08:49 -0800)]
VOM: NAT updates

Change-Id: I112afaa1f2ccd2ee62a436c73802afaea9b44779
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
6 years agotcp: add builtin server/client transfer test 61/9861/9
Florin Coras [Thu, 14 Dec 2017 19:30:48 +0000 (11:30 -0800)]
tcp: add builtin server/client transfer test

Change-Id: Iab0baabf2f27bc7ad7fbf2d2789a493752b07d8a
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agomaintainers: update email 97/9897/1
Sergio Gonzalez Monroy [Fri, 22 Dec 2017 09:36:21 +0000 (09:36 +0000)]
maintainers: update email

Change-Id: Ie915f7b0153bed2e603eedc642df852b85c8ad5c
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
6 years agofib: make deag entries urpf extempt 60/9860/4
Florin Coras [Sat, 16 Dec 2017 16:31:06 +0000 (08:31 -0800)]
fib: make deag entries urpf extempt

Change-Id: Ie8f6bb4fcd3e4fa269e86a77d2f21c87f372b783
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoVPP-1109 Fix loop for some CLI (code review) 94/9894/1
Swarup Nayak [Thu, 21 Dec 2017 06:05:33 +0000 (11:35 +0530)]
VPP-1109 Fix loop for some CLI (code review)

Change-Id: I518387ab479bee4778d45a33c95f7b0f72aa1b72
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agoL2 emulation: remove usued ip-table-id from API 88/9888/1
Neale Ranns [Wed, 20 Dec 2017 16:54:52 +0000 (08:54 -0800)]
L2 emulation: remove usued ip-table-id from API

IP table mapping is set using 'set int ip table X Y"

Change-Id: I2adec40015f9281c9b00c55506000b322f42d91a
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
6 years agoacl-plugin: add a debug CLI to print 5-tuple structure in human readable format from... 86/9886/2
Andrew Yourtchenko [Wed, 20 Dec 2017 15:08:03 +0000 (16:08 +0100)]
acl-plugin: add a debug CLI to print 5-tuple structure in human readable format from hex representation

Even though the trace now prints the hex as well as human readable format for acl plugin,
it can be handy to have a separate function which allows to decode the hex. So add this debug CLI.

Change-Id: I1db133a043374817ea9e94ae3736b8a98630669d
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
6 years agoL2 Emulation 59/9759/8
Neale Ranns [Sat, 21 Oct 2017 13:34:22 +0000 (06:34 -0700)]
L2 Emulation

L2 Emulation is a feautre that is applied to L2 ports to 'extract'
IP packets from the L2 path and inject them into the L3 path (i.e.
into the appropriate ip[4|6]_input node).
L3 routes in the table_id for that interface should then be configured
as DVR routes, therefore the forwarded packet has the L2 header
preserved and togehter the L3 routed system behaves like an L2 bridge.

Change-Id: I8effd7e2f4c67ee277b73c7bc79aa3e5a3e34d03
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agofix kubeproxy some tests 80/9880/2
Gabriel Ganne [Tue, 19 Dec 2017 15:13:44 +0000 (16:13 +0100)]
fix kubeproxy some tests

* NAT46: fix test cleanup, missing del keyword
* NAT66: fix kube-proxy vip, is ipv6
* add some missing kp_put_writer_lock
* wipe flowtable after each unit test
  * Add new cli api: "test kube-proxy flowtable flush" to flushes everything
  * Call this new cli function after the end of each kube-proxy unit test.
  * same as commit b3d1b203579226ca5136b9d6a2744577d07cfcc6 for the lb plugin

Change-Id: I4146f44841328ec96eb66729e3bae3d40f33e4aa
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
6 years agoTranslate matching packets using NAT (VPP-1069) 59/9559/8
Juraj Sloboda [Thu, 23 Nov 2017 12:20:48 +0000 (13:20 +0100)]
Translate matching packets using NAT (VPP-1069)

Add API function which enables forwarding of packets not matching
existing translation or static mapping instead of dropping them.

When forwarding is enabled matching packets will be translated
while non-matching packets will be forwarded without translation.

Change-Id: Ic13040cbad16d3a1ecdc3e02a497171bef6aa413
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
6 years agoFix MPLS local-label CLI help string 73/9873/3
Marek Gradzki [Tue, 19 Dec 2017 12:15:39 +0000 (13:15 +0100)]
Fix MPLS local-label CLI help string

CLI parsing code (unformat_fib_route_path) does not
recognise 'resolve-via-connected'.

However it understands 'resolve-via-attached'.

Change-Id: I57e5eb75199cb8ae72c0fc8642a41f042b022201
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
6 years agoVPP-1083 "ip punt redirect add" crashed if not mentioned any other parameter 87/9787/4
Swarup Nayak [Mon, 11 Dec 2017 08:22:44 +0000 (13:52 +0530)]
VPP-1083 "ip punt redirect add" crashed if not mentioned any other parameter

Change-Id: Ibb6f450783d0ab64bd943c19f12d0954b0a94b24
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agoBIER coverity fix in route downlaod 71/9871/2
Neale Ranns [Tue, 19 Dec 2017 09:34:30 +0000 (01:34 -0800)]
BIER coverity fix in route downlaod

Change-Id: I9341f1554d804dfeeecef656e59e8598704863dc
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoFIB memory leak during recursive loop detection 77/9877/2
Neale Ranns [Tue, 19 Dec 2017 15:00:09 +0000 (07:00 -0800)]
FIB memory leak during recursive loop detection

Change-Id: I5ecd43330b3329b072e6da62a4eed1641eb17f8f
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoVPP-1032: fix coverity warning in bier 76/9876/2
Dave Barach [Tue, 19 Dec 2017 13:26:27 +0000 (08:26 -0500)]
VPP-1032: fix coverity warning in bier

Change-Id: I0f8d2d9be78d4d936ed61538aee1b7207871347b
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoFix passing bad context for callback function 24/9624/4
Juraj Sloboda [Fri, 10 Nov 2017 11:11:50 +0000 (12:11 +0100)]
Fix passing bad context for callback function

Change-Id: I61e6019ab34f52c82bf3f1e5327501a613f58bd9
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
6 years agoNAT: Twice NAT44 (VPP-969) 67/9867/2
Matus Fabian [Mon, 18 Dec 2017 13:38:24 +0000 (05:38 -0800)]
NAT: Twice NAT44 (VPP-969)

Translation of both source and destination addresses and ports for 1:1 NAT
session initiated from outside network (ExternalIP K8 use case).

Change-Id: Ic0000497cf71619aac996d6d580844f0ea0edc14
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agolldp: Fix Coverity Warnings CID 177942, CID 177945 70/9870/2
Dave Wallace [Mon, 18 Dec 2017 22:19:21 +0000 (17:19 -0500)]
lldp: Fix Coverity Warnings CID 177942, CID 177945

Change-Id: Ic1ab32c5df3f7a613fe0dcd6bfc15037fa2a008b
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
6 years agosession api: Fix Coverity Warning CID 180115 68/9868/2
Dave Wallace [Mon, 18 Dec 2017 18:51:59 +0000 (13:51 -0500)]
session api: Fix Coverity Warning CID 180115

Change-Id: I87e3de556910851d16af343bfcbede49500843ff
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
6 years agoAPI: Fix Coverity Warning CID 177944 69/9869/1
Dave Wallace [Mon, 18 Dec 2017 20:40:53 +0000 (15:40 -0500)]
API: Fix Coverity Warning CID 177944

Change-Id: I5dbd5e5673ecb0d3878053ae9985478740cf3bc6
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
6 years agoNAT: Add performance testing TRex scripts and config (VPP-832) 58/8558/3
Matus Fabian [Wed, 27 Sep 2017 11:44:08 +0000 (04:44 -0700)]
NAT: Add performance testing TRex scripts and config (VPP-832)

Change-Id: I149a20f183b836db4c32fb4e4a8438b3a14c1c26
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agoUpdated MAINTAINERS 64/9864/3
Radu Nicolau [Mon, 18 Dec 2017 11:18:22 +0000 (11:18 +0000)]
Updated MAINTAINERS

Added Radu Nicolau as maintainer for
src/devices/dpdk/ipsec/ and src/vnet/ipsec/

Change-Id: If354344f5685ce0e431757768b77c4d5e8e409f9
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
6 years agoFix nat44 identity mapping 65/9865/2
Dave Barach [Mon, 18 Dec 2017 13:11:37 +0000 (08:11 -0500)]
Fix nat44 identity mapping

Set l_addr to the interface address if the interface address is known
when the identity mapping is created.

Change-Id: I61af0f5248c9d86d23a24457b342b2e1fb4ac726
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoProvide useful output when installed vpp-dpdk version is incorrect 26/9326/2
Ed Warnicke [Wed, 8 Nov 2017 20:39:31 +0000 (13:39 -0700)]
Provide useful output when installed vpp-dpdk version is incorrect

Change-Id: Icb931de82cb5969fa4976611629e2f882c720a99
Signed-off-by: Ed Warnicke <eaw@cisco.com>
6 years agoSupport kube-proxy data plane 20/8220/25
Hongjun Ni [Mon, 28 Aug 2017 17:00:42 +0000 (01:00 +0800)]
Support kube-proxy data plane

This plugin provides kube-proxy data plane on user space,
which is used to replace linux kernal's kube-proxy based on iptables.
The idea is largely inspired from VPP LB plugin.

Currently, kube-proxy plugin supports three service types:
1) Cluster IP plus Port: support any protocols, including TCP, UDP.
2) Node IP plus Node Port: currently only support UDP.
3) External Load Balancer.

Please refer to kp_plugin_doc.md for details.

Change-Id: I36690e417dd26ad5ec1bd77c7ea4b8100416cac6
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
6 years agoSR-MPLS: binary API and automated steering 76/9376/19
Pablo Camarillo [Thu, 13 Jul 2017 07:41:32 +0000 (09:41 +0200)]
SR-MPLS: binary API and automated steering

Change-Id: Iacfbaaa91ea8bd92790dec9fce567063bdbc5d64
Signed-off-by: Pablo Camarillo <pcamaril@cisco.com>
6 years agoVPP-269 Coding standards cleanup - vnet/vnet/policer 87/9587/5
Krishanpal singh [Mon, 27 Nov 2017 14:10:56 +0000 (19:40 +0530)]
VPP-269 Coding standards cleanup - vnet/vnet/policer

Change-Id: Ib92794205027d3242c6f0c8962fe02ac38c7129b
Signed-off-by: Krishanpal singh <krish.singh03@gmail.com>
6 years agoUpdate CSIT tests 171204 -> 171218 63/9863/1
Jan Gelety [Mon, 18 Dec 2017 08:03:17 +0000 (09:03 +0100)]
Update CSIT tests 171204 -> 171218

- update of CSIT operational branch to be used for VPP-patch test

Change-Id: I5ad0e36fa40095cc107a31b32dd2bbf936636dc4
Signed-off-by: Jan Gelety <jgelety@cisco.com>
6 years agoPAPI: Add docstrings to unit tests. 41/9841/3
Ole Troan [Thu, 14 Dec 2017 10:28:21 +0000 (11:28 +0100)]
PAPI: Add docstrings to unit tests.

Change-Id: I0e20100c9e2ca4e951f605a79d48c04ff47864cb
Signed-off-by: Ole Troan <ot@cisco.com>
6 years agoGRE tunnel key includes the FIB table 49/9849/2
Neale Ranns [Thu, 14 Dec 2017 16:51:32 +0000 (08:51 -0800)]
GRE tunnel key includes the FIB table

- GRE tunnels with the same src,dst addresses are not the same tunnel
- Two data-plane improvements:
  - the cached key was never updated and so useless
  - no need to dereference the tunnel's HW interface to get the sw_if_index

Change-Id: I2f2ea6e08c759a810b753cec22c497e921a2ca01
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoUse crc32 wrapper (VPP-1086) 54/9854/2
Gabriel Ganne [Thu, 14 Dec 2017 15:20:37 +0000 (16:20 +0100)]
Use crc32 wrapper (VPP-1086)

This allows arm platforms to also take advantage of crc32 hardware
acceleration.

* add a wrapper for crc32_u64. It's the only one really used. Using it
  instead of a call to clib_crc32c() eases building symmetrical hash
  functions.
* replace #ifdef on SSE4 by a test on clib_crc32c_uses_intrinsics.
  Note: keep the test on i386
* fix typo in lb test log

Change-Id: I03a0897b70f6c1717e6901d93cf0fe024d5facb5
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
6 years agodpdk: unset ETH_TXQ_FLAGS_NOXSUMS only for selected PMDs 59/9859/2
Damjan Marion [Fri, 15 Dec 2017 21:05:04 +0000 (22:05 +0100)]
dpdk: unset ETH_TXQ_FLAGS_NOXSUMS only for selected PMDs

Change-Id: I1699e440052faa317b06d46692e8656a41d21bfe
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agoVPP-1102: fix dangling references in RPC handling 58/9858/3
Dave Barach [Fri, 15 Dec 2017 17:22:57 +0000 (12:22 -0500)]
VPP-1102: fix dangling references in RPC handling

Queue RPC calls and send them from the main dispatch loop. As things stood,
if the vpp main input queue filled, worker threads could enter a
barrier-sync spin-wait in the middle of processing a frame. If thread
0 decided to recreate worker thread data structures, the worker thread(s)
could easily crash.

Legislate the problem out of existence by enqueueing RPC messages only
from the main dispatch loop. At that point, doing a barrier-sync wait
is perfectly OK.

Change-Id: I18da3e44bb1f29a63fe5f30cf11de732ecfd5bf7
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoapps: refactor uri and update build infra 07/9807/12
Florin Coras [Mon, 11 Dec 2017 19:49:26 +0000 (11:49 -0800)]
apps: refactor uri and update build infra

Change-Id: Ifa9966a27586a1a65038d069cf4a1e6e21a72d45
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoFix icmp/udp/tcp punt/drop paths 40/9440/8
Vijayabhaskar Katamreddy [Wed, 15 Nov 2017 21:50:26 +0000 (13:50 -0800)]
Fix icmp/udp/tcp punt/drop paths

Send packets to ip4/6_punt/drop nodes instead of error-drop/punt nodes

dbarach: clean up an annoying checkstyle issue: indent 2.2.10
(OpenSUSE version) and indent 2.2.11 (Ubuntu / CentOS versions) had an
artistic disagreement about ip_frag.c.

Change-Id: I660bee28a064af9c6c70371363081e941d1c3a94
Signed-off-by: Vijayabhaskar Katamreddy <vkatamre@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agomake test: disable tests which require CXX >= 5.3 on rhel 55/9855/2
Gabriel Ganne [Fri, 15 Dec 2017 09:47:09 +0000 (10:47 +0100)]
make test: disable tests which require CXX >= 5.3 on rhel

same as commit d3e671e0dbb879d90f00bdee608ee0bb5f6357ae did for centos

Change-Id: If57765490d1ef41042a42db433b704af2f0c0ffd
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
6 years agoVCL-LDPRELOAD: Fix Coverity Warning CID 178776 52/9852/2
Dave Wallace [Fri, 15 Dec 2017 02:36:31 +0000 (21:36 -0500)]
VCL-LDPRELOAD: Fix Coverity Warning CID 178776

- Fix broken unit test code.
- Check for NULL ptr in vppcom_session_attr()
  VPPCOM_ATTR_GET_*_ADDR endpoint parameters.

Change-Id: I01169edce098ee855a9cba08893c2b08c93ea6c3
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
6 years agoimplement clib_smp_pause() for arm and aarch64 platform 20/9820/3
Kevin Wang [Fri, 8 Dec 2017 05:43:27 +0000 (13:43 +0800)]
implement clib_smp_pause() for arm and aarch64 platform

Change-Id: Ic9c1c70e06b953538ed43fc91ed26b6be82ce812
Signed-off-by: Kevin Wang <kevin.wang@arm.com>
6 years agofib: fix show fib path-list and path 53/9853/3
Florin Coras [Thu, 14 Dec 2017 19:34:37 +0000 (11:34 -0800)]
fib: fix show fib path-list and path

Change-Id: I465282e513b6a0482e96dd02fc7e0e4ed3e3731a
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoESP_AH_test_automation_scripts rev1 02/9802/5
“mystarrocks” [Mon, 11 Dec 2017 15:11:51 +0000 (07:11 -0800)]
ESP_AH_test_automation_scripts rev1

Change-Id: I941abdc4a02e4c52c66b9d299e380b27caca7c1d
Signed-off-by: “mystarrocks” <mystarrocks@yahoo.com>
6 years agoIgnore core files 48/9848/2
Keith Burns (alagalah) [Thu, 14 Dec 2017 16:25:05 +0000 (08:25 -0800)]
Ignore core files

Change-Id: I7ffaceb992d12fd255fe8a608b0493c2993c18c2
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
6 years agoFix display of single-event event-logs 51/9851/1
Dave Barach [Thu, 14 Dec 2017 22:21:36 +0000 (17:21 -0500)]
Fix display of single-event event-logs

Change-Id: Ib3e25916c66fa3e1b082359095652c45d3b27d0f
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoVPP-1100 Fix loop in "set punt tcp/udp command" 16/9816/3
Swarup Nayak [Wed, 13 Dec 2017 07:57:23 +0000 (13:27 +0530)]
VPP-1100 Fix loop in "set punt tcp/udp command"

Change-Id: I23081ea25a8d40d8ebe1fcb6efe4143e9c5a0fc6
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agopci: auto-detect right vfio/uio driver 01/9801/4
Damjan Marion [Mon, 11 Dec 2017 14:55:56 +0000 (15:55 +0100)]
pci: auto-detect right vfio/uio driver

Change-Id: Ib4012ff598698924484525932d041988cc4c63f6
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agovom: acl: Extend constructor for l3 rule 43/9843/2
Mohsin Kazmi [Wed, 13 Dec 2017 16:59:33 +0000 (17:59 +0100)]
vom: acl: Extend constructor for l3 rule

New constructor can construct the l3 rule
using all or partial paratmeters.

Change-Id: I828ec1c4713decb5824e4a73c3692cebc2324cc2
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
6 years agovom: acl-list: Add comparison operator - for UT 42/9842/2
Mohsin Kazmi [Wed, 13 Dec 2017 18:31:02 +0000 (19:31 +0100)]
vom: acl-list: Add comparison operator - for UT

Change-Id: I341f522b46dd85fb3b1dd43fd125513f16f89171
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
6 years agovppinfra: add AVX512 variant of clib_memcpy 40/9840/3
Damjan Marion [Thu, 14 Dec 2017 08:30:11 +0000 (09:30 +0100)]
vppinfra: add AVX512 variant of clib_memcpy

Taken from DPDK, also AVX2 variant updated to be in sync with DPDK
version.

Change-Id: I8a42e4141a5a1a8cfbee328b07bd0c9b38a9eb05
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agotap_v2: include host-side parameters in the dump binary API 39/9839/3
Milan Lenco [Thu, 14 Dec 2017 09:04:25 +0000 (10:04 +0100)]
tap_v2: include host-side parameters in the dump binary API

Change-Id: I097a738b96a304621520f1842dcac7dbf61a8e3f
Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
6 years agoVPP-1032: clean up coverity warnings. 34/9834/2
Dave Barach [Wed, 13 Dec 2017 16:43:13 +0000 (11:43 -0500)]
VPP-1032: clean up coverity warnings.

"This time, for sure..."

Change-Id: Ie981003842d37c5eb6a0b2fe3abe974a93b86df8
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoEnable AWS ENA PMD 37/9837/2
Matthew Smith [Mon, 11 Dec 2017 23:29:57 +0000 (17:29 -0600)]
Enable AWS ENA PMD

Elastic Network Adapter PMD for newer AWS instance types

Change-Id: Ic7f6ac4a261ccc7af3ffb2ed8950274532e3feae
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
6 years agoNAT64: fix coverity (VPP-1032) 38/9838/2
Matus Fabian [Thu, 14 Dec 2017 07:15:47 +0000 (23:15 -0800)]
NAT64: fix coverity (VPP-1032)

CIDs 180713 and 180714

Change-Id: Ia4856d1a62f176e99983f8c82eaa09d5df9d4ca5
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agoBIER disposition default route 35/9835/2
Neale Ranns [Wed, 13 Dec 2017 17:13:41 +0000 (09:13 -0800)]
BIER disposition default route

Change-Id: I7196ad8bf6afaf356674789c05e23ac000bc038e
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agosession: cleanup attach flags 04/9804/2
Florin Coras [Mon, 11 Dec 2017 12:59:01 +0000 (04:59 -0800)]
session: cleanup attach flags

Change-Id: I39d21d15677f57e10b69b8842f2cbca277abddf0
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoIP bi-direction multicast - same cable check on egress 19/9819/3
Neale Ranns [Wed, 13 Dec 2017 09:44:25 +0000 (01:44 -0800)]
IP bi-direction multicast - same cable check on egress

Change-Id: I655382f7f74181dd7c795a2b22f151f76b50e793
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agomake "test-all" target pass again 02/9702/3
Gabriel Ganne [Fri, 17 Nov 2017 08:18:53 +0000 (09:18 +0100)]
make "test-all" target pass again

The "test-all" target is still never called as part of any continuous
test (as it probably should) but at least it can now be expected to
succeed.

VXLAN-GPE:
* decapsulate Ethernet to "l2-input" instead of "ethernet-input"
  otherwise the inner mac address get checked against the interface one
  (external) and packet gets dropped (mac mismatch)
* set packet input sw_if_index to unicast vxlan tunnel for learning

TEST:
* VXLAN:
  * reduce the number of share tunnels:
    => reduce test duration by half
    => no functional change
* VXLAN-GPE:
  * fix test TearDown() cli: command is "show vxlan-gpe" only
  * remove vxlan-gpe specific tests as the were a duplicated of the
    BridgeDomain one and already inherited.
  * disable test_mcast_rcv() and test_mcast_flood() tests
* P2PEthernetAPI:
  * remove test: "create 100k of p2p subifs"
    there already is a "create 1k p2p subifs" so this one is a load test
    and not a unit test.
    See: lists.fd.io/pipermail/vpp-dev/2017-November/007280.html

Change-Id: Icafb83769eb560cbdeb3dc6d1f1d3c23c0901cd9
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
6 years agoBIER: API documentation fixes. 18/9818/2
Neale Ranns [Tue, 12 Dec 2017 13:32:50 +0000 (05:32 -0800)]
BIER: API documentation fixes.

Change-Id: I497305d9a4fd556ed8b4a7ceb3654df94ff98f56
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agophysmem: fix bug in detection of cross page boundary allocations 24/9824/2
Damjan Marion [Wed, 13 Dec 2017 12:51:13 +0000 (13:51 +0100)]
physmem: fix bug in detection of cross page boundary allocations

Change-Id: I18e9227565243bce7d4102b1950eec9e019a097a
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agoSeparate heap for IPv4 mtries 31/9631/3
Neale Ranns [Wed, 29 Nov 2017 13:20:37 +0000 (05:20 -0800)]
Separate heap for IPv4 mtries

Change-Id: I497e9f6489dd35219bcf2b51ac992467aac4c8eb
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoGRE: fix single loop decap and add test 21/9821/2
Neale Ranns [Wed, 13 Dec 2017 10:47:27 +0000 (02:47 -0800)]
GRE: fix single loop decap and add test

Change-Id: I64e8a76a17057ae69de72a5a80c0a194cd0c21cb
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoNAT64: multi-thread support (VPP-891) 58/9758/2
Matus Fabian [Fri, 8 Dec 2017 07:22:51 +0000 (23:22 -0800)]
NAT64: multi-thread support (VPP-891)

Change-Id: Iebf859b6d86482e4465423bad598eecf87e53ec4
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agoNAT: DS-Lite AFTR tunnel endpoint address respond to ICMPv6 echo request (VPP-1090) 60/9760/2
Matus Fabian [Fri, 8 Dec 2017 11:38:51 +0000 (03:38 -0800)]
NAT: DS-Lite AFTR tunnel endpoint address respond to ICMPv6 echo request (VPP-1090)

Change-Id: I361c043979274eac1aefcd95abdf1624a3ef2756
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 years agoFix parameter mismatch in map-t code 22/9822/2
Juraj Sloboda [Wed, 13 Dec 2017 10:53:32 +0000 (11:53 +0100)]
Fix parameter mismatch in map-t code

Change-Id: Ifa37767eb2c3cfc343f54691e6042473a6adf474
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
6 years agoVOM: a couple of print fixes 17/9817/2
Neale Ranns [Wed, 13 Dec 2017 08:55:58 +0000 (00:55 -0800)]
VOM: a couple of print fixes

Change-Id: I4c22ad08bf8fa3e8f05b8938ff447cafa4eea5b2
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
6 years agoVPP-1099 Fix create vxlan-gpe tunnel local 10::1 remote 20::1 vni 11 (for ipv6) 14/9814/1
Swarup Nayak [Wed, 13 Dec 2017 07:32:22 +0000 (13:02 +0530)]
VPP-1099 Fix create vxlan-gpe tunnel local 10::1 remote 20::1 vni 11 (for ipv6)

Change-Id: I3255cd1be4ae4ec8d09574183c96f59028374a5e
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agoVPP-275 Coding standards cleanup - vnet/vnet/vxlan-gpe 82/9782/2
sharath reddy [Mon, 11 Dec 2017 06:01:31 +0000 (11:31 +0530)]
VPP-275 Coding standards cleanup - vnet/vnet/vxlan-gpe

Change-Id: Ifabb8d22d20bc1031664d5f004e74cd363759ab6
Signed-off-by: sharath reddy <sharathkumarboyanapally@gmail.com>
6 years agoVPP-1032: fix coverity warnings 11/9811/2
Dave Barach [Tue, 12 Dec 2017 13:29:42 +0000 (08:29 -0500)]
VPP-1032: fix coverity warnings

Change-Id: Ic551af286aa84293deb260560c12def430449598
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agotcp/session: add make tests 06/9806/3
Florin Coras [Mon, 11 Dec 2017 17:09:05 +0000 (09:09 -0800)]
tcp/session: add make tests

Change-Id: Icb93ab80c5a6432d7b2b698a47e8b612c6f06fbd
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agosession: fix proxy removal 05/9805/2
Florin Coras [Mon, 11 Dec 2017 11:37:03 +0000 (03:37 -0800)]
session: fix proxy removal

Change-Id: Ia7cb4dc18710d15352629d78d9e0c34fb65762f3
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoStats for Multicast FIB 08/9808/2
Neale Ranns [Tue, 12 Dec 2017 08:21:19 +0000 (00:21 -0800)]
Stats for Multicast FIB

Change-Id: I46b4aeb6ec9ab6ee462f9c5074b5778d94bf8dc3
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agoSimplify packages dependency 09/9809/3
Marco Varlese [Tue, 12 Dec 2017 10:06:17 +0000 (11:06 +0100)]
Simplify packages dependency

Change-Id: I3d93f74419269448731e66708443625f43925baf
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
6 years agoAdd chi-squared test statistic calculator to random.c 12/9812/1
Dave Barach [Tue, 12 Dec 2017 15:22:27 +0000 (10:22 -0500)]
Add chi-squared test statistic calculator to random.c

Change-Id: I0a0f8c9aad1530d18c70c962e729e84948a074ee
Signed-off-by: Dave Barach <dave@barachs.net>
6 years agoVPP-1092 Correcting ip punt delete flow, when recv if index valid but doesnt exist... 99/9799/4
Swarup Nayak [Mon, 11 Dec 2017 12:06:54 +0000 (17:36 +0530)]
VPP-1092 Correcting ip punt delete flow, when recv if index valid but doesnt exist in configuration

Change-Id: I01a69c4eef2c6224a24907b8fed12dcb1b642307
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agosession: generalize handling of network transports 80/9780/10
Florin Coras [Sat, 9 Dec 2017 18:19:43 +0000 (10:19 -0800)]
session: generalize handling of network transports

- compute session type out of transport and network protos
- make session, session lookup and session queue code network protocol
  agnostic

This does not update the session layer to support non-ip network layer
protocols

Change-Id: Ifc2f92845e158b649d59462eb7d51c12af536691
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agoacl-plugin: unapply/reapply the classifier-based inacls when performing macip_acl_add... 72/9772/5
Andrew Yourtchenko [Sat, 9 Dec 2017 13:55:52 +0000 (14:55 +0100)]
acl-plugin: unapply/reapply the classifier-based inacls when performing macip_acl_add_replace on an existing MACIP ACL

The classifier tables layout might (and most always will) change during the MACIP ACL modification.
Furthermore, vnet_set_input_acl_intfc() is quite a picky creature - it quietly does nothing
if there is an existing inacl applied, even if the number is different, so a simple "reapply"
does not work. So, cleanly remove inacl, then reapply when the new tables are ready.

Also, fix the testcase which was supposed to test this exact behavior.

Thanks to Jon Loeliger for spotting this issue.

Change-Id: I7e4bd8023d9de7e914448bb4466c1b0ef6940f58
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
6 years agoONE-33 "one statistics flush" throws assert when one counter not added 00/9800/1
Swarup Nayak [Mon, 11 Dec 2017 14:38:57 +0000 (20:08 +0530)]
ONE-33 "one statistics flush" throws assert when one counter not added

Change-Id: Id10f10889c3036a6db21c999c1e6c54fc1770213
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agoVPP-273 Coding standards cleanup - vnet/vnet/unix 27/9627/2
sharath reddy [Wed, 29 Nov 2017 14:38:11 +0000 (20:08 +0530)]
VPP-273 Coding standards cleanup - vnet/vnet/unix

Change-Id: Ibac5a4588e66f6d3ad42dd2583e1e84b7d2314c4
Signed-off-by: sharath reddy <sharathkumarboyanapally@gmail.com>
6 years agocall unformat_free in some flow, remove unnecessary calls 19/9719/5
Swarup Nayak [Tue, 5 Dec 2017 04:16:17 +0000 (09:46 +0530)]
call unformat_free in some flow, remove unnecessary calls

Change-Id: I565277eafbce3d4f59a7f0d497fca1c4fed3cfc8
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agovcl: fix session preallocation 77/9777/2
Florin Coras [Sat, 9 Dec 2017 16:15:00 +0000 (08:15 -0800)]
vcl: fix session preallocation

Change-Id: I174ba43380e97104f6721af647c699922e996f5a
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 years agovlib: fix issues in the new pci code reported by coverity 81/9781/1
Damjan Marion [Sun, 10 Dec 2017 22:54:46 +0000 (23:54 +0100)]
vlib: fix issues in the new pci code reported by coverity

Change-Id: I8acc5c419b6ad01937c3aecec42801463d4a119a
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agoBIER coverity Fix 79/9779/2
Neale Ranns [Sun, 10 Dec 2017 13:32:31 +0000 (05:32 -0800)]
BIER coverity Fix

Change-Id: I17f95775756b8fd5ee390432f6d8041abbd9f974
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agotap_v2: fix issues reported by coverity 73/9773/2
Damjan Marion [Sat, 9 Dec 2017 20:19:01 +0000 (21:19 +0100)]
tap_v2: fix issues reported by coverity

Change-Id: I1bbd3f6ece255edfd4ebf268ac60f79dce1d10e7
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agoimprove vapi json parser error handling 78/9778/1
Klement Sekera [Sun, 10 Dec 2017 04:15:41 +0000 (05:15 +0100)]
improve vapi json parser error handling

Change-Id: I39b975e6dc3b3ed1f81c1736ed498aee05f6a88b
Signed-off-by: Klement Sekera <ksekera@cisco.com>
6 years agoupdate builtin UDP server to new vnet_session API 68/9768/2
Andreas Schultz [Fri, 8 Dec 2017 15:35:56 +0000 (16:35 +0100)]
update builtin UDP server to new vnet_session API

* app_index has to be valid
* vnet_session needs to be enabled before binding

Change-Id: I410a25153e650d8bc332131a81bf46a0175566d4
Signed-off-by: Andreas Schultz <aschultz@warp10.net>
6 years agomake sure the very first fragment triggers an rx_callback 67/9767/3
Andreas Schultz [Fri, 8 Dec 2017 14:12:36 +0000 (15:12 +0100)]
make sure the very first fragment triggers an rx_callback

On the first session server, the first payload packet gets queued
but the Rx callback will only be invoked when the second packet
is received.

By initializing enqueue_epoch in the session, we can make sure that
the RX callback will be invoked for the first packet as well.

Change-Id: I60e2cf8d4d2ca71d461ca003d459c8e6e6956a4d
Signed-off-by: Andreas Schultz <aschultz@warp10.net>
6 years agoVPP-1077 Add meaningful error info, when executing command with enable/disable option 97/9697/3
Swarup Nayak [Mon, 4 Dec 2017 06:24:43 +0000 (11:54 +0530)]
VPP-1077 Add meaningful error info, when executing command with enable/disable option

Change-Id: I47dd6f9637f0214971e3191852d84aa92d64b8c0
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
6 years agoBIER in non-MPLS netowrks 36/9736/7
Neale Ranns [Tue, 5 Dec 2017 21:24:04 +0000 (13:24 -0800)]
BIER in non-MPLS netowrks

as decsribed in section 2.2
  ihttps://tools.ietf.org/html/draft-ietf-bier-mpls-encapsulation-10
with BIFT encoding from:
  https://tools.ietf.org/html/draft-wijnandsxu-bier-non-mpls-bift-encoding-00

changes:
1 - introduce the new BIFT lookup table. BIER tables that have an associated
    MPLS label are added to the MPLS-FIB. Those that don't are added to the
    BIER table
2 - BIER routes that have no associated output MPLS label will add a BIFT label.
3 - The BIER FMask has a path-list as a member to resolve via any possible path.

Change-Id: I1fd4d9dbd074f0e855c16e9329b81460ebe1efce
Signed-off-by: Neale Ranns <nranns@cisco.com>
6 years agovlib: PCI rework to support VFIO 57/9757/12
Damjan Marion [Thu, 5 Oct 2017 13:32:41 +0000 (15:32 +0200)]
vlib: PCI rework to support VFIO

Also fixes old ixge driver, so it works with recent physmem changes and
vfio.

Change-Id: Id4be74b34daed47cd281a77eec43d6692340d882
Signed-off-by: Damjan Marion <damarion@cisco.com>
6 years agoVPP-249 Coding standards cleanup - vnet/vnet/dhcp 62/9762/2
khemendra kumar [Fri, 8 Dec 2017 12:36:52 +0000 (18:06 +0530)]
VPP-249 Coding standards cleanup - vnet/vnet/dhcp

Change-Id: I45a166b5780675d2bc6fe90595f413725704eaa8
Signed-off-by: khemendra kumar <khemendra.kumar13@gmail.com>
6 years agojvpp: include all api files from @top_builddir@/vpp 65/9765/2
Marek Gradzki [Fri, 8 Dec 2017 14:26:55 +0000 (15:26 +0100)]
jvpp: include all api files from @top_builddir@/vpp

Currently:
- vpe.api (supported previously)
- stats.api
- oam.api

Change-Id: Iab48d5d142e9a1ea0a4f366352b1d9429cc47309
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
6 years agojvpp: do not hardcode event sufixes (VPP-940) 63/9763/2
Marek Gradzki [Thu, 7 Dec 2017 14:40:11 +0000 (15:40 +0100)]
jvpp: do not hardcode event sufixes (VPP-940)

JVpp maps request messages with replies
for Java API user convenience, e.g.:
- do not polute send APIs with messages other than requests/dumps,
- allow callback registration only for replies/details and events.

Since there are no conventions for event message naming
(https://wiki.fd.io/view/VPP/API_Concepts#API_Conventions),

jvpp should not limit events to messages
that end with 'event' or 'counters' suffix.

Instead jvpp should treat all messages
except for requests/dumps as potential events.

Such behaviour was introduced on Java API level by
https://gerrit.fd.io/r/#/c/8377/

in order support reusing
details messages as events (e.g. BFD events).

This patch goes one step forward by
relaxing rules at jvpp generation level.

Change-Id: I2a35e9eb2a288b2cf02d36ca95e6cb13e76e19e3
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
6 years agoRemove the unused 'create VRF if needed' API parameters 71/9771/1
Neale Ranns [Fri, 8 Dec 2017 21:53:41 +0000 (13:53 -0800)]
Remove the unused 'create VRF if needed' API parameters

Change-Id: I35e166feeb0ac1e0e570efe07cb5f4cbeb5b8670
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
6 years agotapv2: multiple improvements 45/9745/6
Damjan Marion [Mon, 4 Dec 2017 19:03:37 +0000 (20:03 +0100)]
tapv2: multiple improvements

- change interface naming scheme
- rework netlink code
- add option to set link address, namespace

Change-Id: Icf667babb3077a07617b0b87c45c957e345cb4d1
Signed-off-by: Damjan Marion <damarion@cisco.com>