vpp.git
7 years agospan: fix wrong next1 feature index in dual loop 86/3986/3
Pavel Kotucek [Tue, 29 Nov 2016 10:03:37 +0000 (11:03 +0100)]
span: fix wrong next1 feature index in dual loop

Change-Id: I84e822f46fd1a0b83865073e797ef3ac03280e72
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
7 years agoHave make verify check deb and rpm builds 26/3926/8
Ed Warnicke [Tue, 22 Nov 2016 17:57:30 +0000 (17:57 +0000)]
Have make verify check deb and rpm builds

Change-Id: I7fe3558118835240ecd155609821f9de2d609553
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
7 years agoAdded make test to make verify 25/3925/8
Ed Warnicke [Tue, 22 Nov 2016 17:48:13 +0000 (17:48 +0000)]
Added make test to make verify

Change-Id: If5dcfc330a7df69b2c811ce5a8a48c2e0f968270
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
7 years agoFix "TypeError: cannot concatenate 'str' and 'NoneType' objects" 82/3982/2
Ed Warnicke [Mon, 28 Nov 2016 19:59:22 +0000 (13:59 -0600)]
Fix "TypeError: cannot concatenate 'str' and 'NoneType' objects"

Change-Id: I85a42785d43a676b65f26b6e2cd71c997fddcbb1
Signed-off-by: Ed Warnicke <eaw@cisco.com>
7 years agoUpdate CSIT tests 161120 -> 161128 85/3985/1
Jan [Tue, 29 Nov 2016 09:08:34 +0000 (10:08 +0100)]
Update CSIT tests 161120 -> 161128

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

Change-Id: Ib0325dde7bd9f9769660d9c5c72f0fda5e752eaf
Signed-off-by: Jan <jgelety@cisco.com>
7 years agoAdd support for using documentation siphons in multiple ways 83/3283/5
Chris Luke [Wed, 5 Oct 2016 19:45:19 +0000 (15:45 -0400)]
Add support for using documentation siphons in multiple ways

Experiental support for generating  multiple output formats from the
same siphoned data.

Adds a contrived example to generate a plain list of all CLI commands
(the "itemlist" format).

Eventually we can consider moving the tempate procesisng into the
Output class as well as a way to override how the data is traversed
(ordered).

Change-Id: I77629a74a8fa0c7e583993469dc50491f72f13e7
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoGRE Tests update after postinit removal 79/3979/2
Neale Ranns [Mon, 28 Nov 2016 16:10:59 +0000 (16:10 +0000)]
GRE Tests update after postinit removal

Change-Id: I33df256ca07c99149465c896c7063a3153021a5a
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agosnat: fix coverity issues 76/3976/1
Matus Fabian [Mon, 28 Nov 2016 13:36:24 +0000 (05:36 -0800)]
snat: fix coverity issues

Change-Id: Icb8239c02af8758a9e4bf299726a89677f53451d
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agoClean up the Lua API, make it luajit-only, no C 65/3965/2
Andrew Yourtchenko [Fri, 25 Nov 2016 13:29:30 +0000 (13:29 +0000)]
Clean up the Lua API, make it luajit-only, no C

This removes the libcough which was a temporary layer atop
the libpneum to make it synchronous. Now Lua API only requres
luajit, and has no dependencies on compiling any C.
Also comment out a couple of debug print functions.

Change-Id: I35fd1c8088c6fd1b10b9e4d903ad241ab32fd91a
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
7 years agomake test: detect early vpp crash 45/3945/3
Klement Sekera [Thu, 24 Nov 2016 00:59:16 +0000 (01:59 +0100)]
make test: detect early vpp crash

If VPP process dies right at start, do a quick detection instead of being
stuck in the connect timeout (60s).

Change-Id: I41675181635fb81a6a7d93fbf652480a16bf78a0
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agosnat: thread safe (VPP-443) 88/3488/22
Matus Fabian [Wed, 19 Oct 2016 13:17:52 +0000 (06:17 -0700)]
snat: thread safe (VPP-443)

All traffic corresponding to a specific SANT user is handled by a CPU core.
in2out: Non-translated packets worker lookup by src address and VRF hash in
snat-in2out-worker-handoff node.
out2in: Translated packets worker lookup by dst address and port number hash in
snat-out2in-worker-handoff node.

Change-Id: Ia092a605689539469841d382588f3f486a29a769
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agodpdk: add ipsec cryptodev support 67/3967/2
Sergio Gonzalez Monroy [Fri, 25 Nov 2016 13:36:12 +0000 (13:36 +0000)]
dpdk: add ipsec cryptodev support

DPDK Cryptodev support and related IPsec ESP nodes using DPDK Cryptodev APIs.

When DPDK Cryptodev support is enabled, the node graph is modified by adding
and replacing some of the nodes.

The following nodes are replaced:
* esp-encrypt -> dpdk-esp-encrypt
* esp-decrypt -> dpdk-esp-decrypt

The following nodes are added:
* dpdk-crypto-input : polling input node
* dpdk-esp-encrypt-post : internal node
* dpdk-esp-decrypt-post : internal node

Change-Id: I6dca9a890abaf4fb2a4fffce3fd08ac013e4d701
Signed-off-by: Zhang, Roy Fan <roy.fan.zhang@intel.com>
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
7 years agoUnlock LISP source FIB if only default left 70/3970/1
Florin Coras [Mon, 28 Nov 2016 06:33:01 +0000 (22:33 -0800)]
Unlock LISP source FIB if only default left

If when removing a source route the LISP source FIB contains only the
default, remove the whole source FIB. Defaults are added when FIBs are
created so no forwarding entry depends on them.

Change-Id: I0dd5dc31d128d834ac3b92c962c4c68577aa7429
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agol2: quad loop l2input, l2learn and l2output nodes 62/3962/1
Damjan Marion [Fri, 25 Nov 2016 03:25:01 +0000 (19:25 -0800)]
l2: quad loop l2input, l2learn and l2output nodes

Change-Id: I79f76bc9791d228e2ac2867a1b857bb03d9a5279
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agol2: fix latency issue casued by unnecesary read of previous cacheline 52/3952/2
Damjan Marion [Thu, 24 Nov 2016 21:20:05 +0000 (22:20 +0100)]
l2: fix latency issue casued by unnecesary read of previous cacheline

In majority of cases ethernet header sits at the beggining of cacheline.
Reading (dst_mac - 2) into 64 bit register is much more expensive
than doing simple bitwise shift, specially if previous cacheline is
not prefetched.

Change-Id: I35e53eae735098fb917a87c307e60a87e76e460f
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoString (key,value) pair serialization 53/3953/1
Dave Barach [Thu, 24 Nov 2016 21:34:20 +0000 (16:34 -0500)]
String (key,value) pair serialization

Change-Id: I0e713b5ee82e246d4e5bca138683f3205e984561
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agovhost-user: add retry sequence in tx code 48/3948/2
Damjan Marion [Thu, 24 Nov 2016 10:10:08 +0000 (11:10 +0100)]
vhost-user: add retry sequence in tx code

This change improves NDR rate with vhost-user
interface for ~ 40%.

Change-Id: Ibec0b7cd5a9c3a20c45f71e0081b9cb2db493cb8
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agovlib: remove old memcpy implementation 42/3942/4
Damjan Marion [Thu, 24 Nov 2016 00:28:45 +0000 (01:28 +0100)]
vlib: remove old memcpy implementation

Change-Id: I21f5abb00cf12da5c144da477badc38736be7a7d
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agovhost: CLI delete interface by name 00/3900/2
Pierre Pfister [Mon, 21 Nov 2016 12:52:22 +0000 (12:52 +0000)]
vhost: CLI delete interface by name

Adds interface name parsing to 'delete vhost' command
so an interface name can be provided.

Change-Id: Iacd50545a63548c13b9bb3c36a98e08f6ad74429
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agovhost: Delete thread configuration when interface deleted 99/3899/2
Pierre Pfister [Mon, 21 Nov 2016 12:50:38 +0000 (12:50 +0000)]
vhost: Delete thread configuration when interface deleted

It does not make sense to keep interface configuration
when a vhost interface is deleted.
This fix makes sure thread configuration is removed.

Change-Id: I4b3b75d98c15b544c32928f79ef52b7622a86b75
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoRemove postinit from make-test interfaces 35/3935/3
Matej Klotton [Wed, 23 Nov 2016 14:27:17 +0000 (15:27 +0100)]
Remove postinit from make-test interfaces

Change-Id: I1eb0f735c5d025e6096d5760eb01419a1c58530a
Signed-off-by: Matej Klotton <mklotton@cisco.com>
7 years agovlib: merge buffers.c and dpdk_buffer.c 43/3943/2
Damjan Marion [Thu, 24 Nov 2016 01:07:32 +0000 (02:07 +0100)]
vlib: merge buffers.c and dpdk_buffer.c

Majority of those two files are identical so makes
sense to have only one.

Change-Id: Id23eeb332cb23a11e54eecccefe08594e21a724e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: remove old patches 41/3941/2
Damjan Marion [Wed, 23 Nov 2016 22:47:53 +0000 (23:47 +0100)]
dpdk: remove old patches

Change-Id: I31244207ca5420558c6ff00b2021126ff5628e08
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoipsec: remove dependency on DPDK > 0 40/3940/2
Damjan Marion [Wed, 23 Nov 2016 22:42:23 +0000 (23:42 +0100)]
ipsec: remove dependency on DPDK > 0

ipsec code is not depenent on dpdk anymore.

Change-Id: Iff3f960ca0f0435f66bcb575998d2fcea3377701
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agol2: remove unused l3 packet type discovery in l2 path 39/3939/2
Damjan Marion [Wed, 23 Nov 2016 22:26:47 +0000 (23:26 +0100)]
l2: remove unused l3 packet type discovery in l2 path

This costs significant amount of cycles and it is not
used by anybody.

Change-Id: I42a0306aa7c254292621bdaa09b736421662d540
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: switch to 16.11 33/3733/6
Damjan Marion [Tue, 8 Nov 2016 19:39:21 +0000 (20:39 +0100)]
dpdk: switch to 16.11

Change-Id: Icf9de5b89e5c2cda763e52d528fb70091860a754
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: remove rte_mbuf modifications at many places in the code 35/3835/7
Damjan Marion [Tue, 15 Nov 2016 11:50:28 +0000 (12:50 +0100)]
dpdk: remove rte_mbuf modifications at many places in the code

It is sole responsibility of dpdk tx function to fill/update
rte_mbuf prior to sending packet do PMD.

Change-Id: I8ca1dba3e7bef41034d36e3525831849f7ac4ac0
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agol2: quad loop l2fwd node 37/3937/1
Damjan Marion [Wed, 23 Nov 2016 05:10:25 +0000 (21:10 -0800)]
l2: quad loop l2fwd node

Change-Id: I8510575ee1d6b7c5ccf551766e77e40ce55e644c
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: input node next and error optimizations 36/3936/1
Damjan Marion [Wed, 23 Nov 2016 02:21:51 +0000 (18:21 -0800)]
dpdk: input node next and error optimizations

Change-Id: Iee90ed725e824a3beed2660d21d74dae48c76eb0
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix coverity warnings, VPP-486 33/3933/3
Dave Barach [Wed, 23 Nov 2016 13:57:37 +0000 (08:57 -0500)]
Fix coverity warnings, VPP-486

Change-Id: Id88805f77642187f304f8baef1f6b447728e4b5b
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoCSIT-473: L2 FIB tests 24/3924/2
Jan [Tue, 15 Nov 2016 16:05:00 +0000 (17:05 +0100)]
CSIT-473: L2 FIB tests

 - add/delete MAC entries and check the traffic

Change-Id: I82b568fdd7796461b2df900c07a4bd9b87ab17c2
Signed-off-by: Jan <jgelety@cisco.com>
7 years agodpdk: quad loop dpdk tx and code optimizations 78/3878/12
Damjan Marion [Tue, 15 Nov 2016 11:50:28 +0000 (12:50 +0100)]
dpdk: quad loop dpdk tx and code optimizations

Beside performance optimization this change
also introduces rte_mbuf validation in dpdk tx code.
If packet is arrving from non-DPDK source like
self-originated packets or non-dpdk devices (tuntap,
af_packet, netmap, pg) it is not anymore exepcted
that it contains valid rte_mbuf metadata unless it is
explictely stated by setting VNET_BUFFER_RTE_MBUF_VALID
flag.

dpdk-input node sets VNET_BUFFER_RTE_MBUF_VALID on all
packets and that reduces cost of validation in tx node.

Change-Id: I4ad40f398f7b5cf90656a2069a27c0f6fc13efba
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoGRE tests and fixes 30/3830/5
Neale Ranns [Tue, 15 Nov 2016 09:46:51 +0000 (09:46 +0000)]
GRE tests and fixes

Change-Id: I234240e9bdd4b69ad64a17b1449ae1e81c0edaca
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoFix coverity warnings, VPP-486 27/3927/2
Dave Barach [Tue, 22 Nov 2016 20:23:41 +0000 (15:23 -0500)]
Fix coverity warnings, VPP-486

Change-Id: I4ec49e116fdb418ebf9d84000f2a0cec1cf78b14
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoSpan node configuration fix 21/3921/2
Christophe Fontaine [Tue, 22 Nov 2016 13:52:57 +0000 (14:52 +0100)]
Span node configuration fix

Prefer to use the sw_if_index instead of the hw_if_index
to be compatible with vhost-user interfaces.

Change-Id: Id1e4255a992d428b8de47b3dd6175ed86e08c803
Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
7 years agoPrevent a frame leak when a pending node dispatches packets to itself. 13/3913/3
Neale Ranns [Tue, 22 Nov 2016 08:29:51 +0000 (08:29 +0000)]
Prevent a frame leak when a pending node dispatches packets to itself.

this patch recognises the case where the pending frame has packets dispatched to the same to-node, i.e. when restoring the frame there now exists a new to-node frame, and then frees the frame in hand.

Change-Id: If166bf56970b7b3412fa6097cd90bf22f72abe4d
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoadd vpp banner graphic when vpp-cli starts 15/3815/7
Padraig Connolly [Mon, 14 Nov 2016 11:37:37 +0000 (11:37 +0000)]
add vpp banner graphic when vpp-cli starts

Added check if termianl output is tty
*If terminal is tty, display banner

Added "FD.io VPP" banner to vppctl script on startup
*FD.io displays in red
*VPP displays in white

Change-Id: Iaab3513d4f9d7ba5eefe070c1daf319f5014cf85
Signed-off-by: Padraig Connolly <padraig.connolly@intel.com>
7 years agovppinfra: fix TSC clock detection on newer intel CPUs 08/3808/3
Damjan Marion [Sat, 12 Nov 2016 10:50:01 +0000 (11:50 +0100)]
vppinfra: fix TSC clock detection on newer intel CPUs

Change-Id: Iff88c9a0dd1b7401605075221640b269bec12859
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVAT: don't pass u8 to unformat - it expects an 4 byte integer 19/3919/2
Neale Ranns [Tue, 22 Nov 2016 12:16:59 +0000 (12:16 +0000)]
VAT: don't pass u8 to unformat - it expects an 4 byte integer

Change-Id: I82f21a77b96b9d9f00a4d3cf261bb4bd4644460b
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoFix issues reported by coverity 17/3917/1
Pavel Kotucek [Tue, 22 Nov 2016 08:15:01 +0000 (09:15 +0100)]
Fix issues reported by coverity

Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
Change-Id: I5d8c542fd283f86c325200f3caab56294393cedf

7 years agoDual Loop Load-Balance Nodes 81/3881/2
Neale Ranns [Sat, 19 Nov 2016 13:50:04 +0000 (13:50 +0000)]
Dual Loop Load-Balance Nodes

Change-Id: I23bc477aa03f97dd546747b3297a878055d32e1c
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoAdd client-side msg_name_and_crc -> msg_index table 70/3770/12
Dave Barach [Thu, 10 Nov 2016 19:22:49 +0000 (14:22 -0500)]
Add client-side msg_name_and_crc -> msg_index table

vppapigen now generates per-message crcs. Verified that whitespace
and real changes in message A don't change the crc for message B, etc.

Fixed the sample and flowperpkt plugins to participate. Others need
the same treatment. They don't build due to python/java language binding
build issues.

To use the scheme:

Client connects as usual.

Then call: u32 vl_api_get_msg_index(char * name_and_crc)
name_and_crc is a string like: "flowperpkt_tx_interface_add_del_753301f3",
aka the message name with _%08x <expected crc> appended.

Try these vpp-api-test commands to play with it:

vat# dump_msg_api_table
     <snip>
 [366]: punt_reply_cca27fbe
 [367]: ipsec_spd_dump_5e9ae88e
 [368]: ipsec_spd_details_6f7821b0
 [369]: sample_macswap_enable_disable_0f2813e2
 [370]: sample_macswap_enable_disable_reply_476738e5
 [371]: flowperpkt_tx_interface_add_del_753301f3
 [372]: flowperpkt_tx_interface_add_del_reply_d47e6e0b

vat# get_msg_id sample_macswap_enable_disable_reply_476738e5
 'sample_macswap_enable_disable_reply_476738e5' has message index 370

vat# get_msg_id sample_macswap_enable_disable_reply_476738e3
 'sample_macswap_enable_disable_reply_476738e3' not found

CRCs may vary, etc.

vppapigen is used to build a set of JSON representations
of each API file from vpp-api/Makefile.am and that is in
turn used by each language binding (Java, Python, Lua).

Change-Id: I3d64582e779dac5f20cddec79c562c288d8fd9c6
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Ole Troan <ot@cisco.com>
7 years agoUpdate CSIT tests 161113 -> 161120 03/3903/2
Jan [Mon, 21 Nov 2016 13:34:05 +0000 (14:34 +0100)]
Update CSIT tests 161113 -> 161120

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

Change-Id: Ib8472f0a6eb4c8add5ca8ba51bccd9ba59938636
Signed-off-by: Jan <jgelety@cisco.com>
7 years agoConvergence Improvements 97/3897/2
Neale Ranns [Mon, 21 Nov 2016 12:25:22 +0000 (12:25 +0000)]
Convergence Improvements

addressing convergence times when interface is shut.
1) prioritise the registered callback handlers. Add FIB convergence handler as high priority
2) hook the FIB convergence call-back into HW link down.
3) don't schedule a walk of a FIB node if it has no children
4) Checks at fib_path_t to prevent unnecessary walks, that it prevent the same information propagting the graph multiple times.

Change-Id: I406966b50f31d77c221821b8649776d66655194c
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agopg: avoid possible buffer leak 73/3873/2
Damjan Marion [Fri, 18 Nov 2016 13:43:10 +0000 (14:43 +0100)]
pg: avoid possible buffer leak

Change-Id: Iad1a4028d7c3d603e644db9f8a743b92fc2a4dba
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agovlib: Add 'show cpu' command 74/3874/2
Damjan Marion [Fri, 18 Nov 2016 15:59:24 +0000 (16:59 +0100)]
vlib: Add 'show cpu' command

Change-Id: I0d9af8e022cc25b8b4503f808f79028190475f8f
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agomake: call install-dep on unatteded invocation 80/3880/3
Damjan Marion [Sat, 19 Nov 2016 11:04:34 +0000 (12:04 +0100)]
make: call install-dep on unatteded invocation

Change-Id: I7a3c21c47f49b56b6435397e731d4da961ef8ffd
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: quad loop dpdk-input node 70/3870/2
Damjan Marion [Tue, 15 Nov 2016 18:47:58 +0000 (19:47 +0100)]
dpdk: quad loop dpdk-input node

Change-Id: I761af883403b6740bd24ce196ae0bfe6bc77b409
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoCLI for access to HQoS queue statistics 20/3820/4
David Hotham [Mon, 14 Nov 2016 14:37:07 +0000 (14:37 +0000)]
CLI for access to HQoS queue statistics

Change-Id: Ib9bc5d8d28b4742583f917c3a20e7c676df59de4
Signed-off-by: David Hotham <david.hotham@metaswitch.com>
7 years agohandoff - allow symmetrical dispatch 62/3862/3
Gabriel Ganne [Wed, 16 Nov 2016 15:57:00 +0000 (16:57 +0100)]
handoff - allow symmetrical dispatch

update cli cmd with symmetrical|asymmetrical flag
(asymetrical by default)

Change-Id: I8186506413a3ba0aa0561c0448b5e06e6d6e7ece
Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
7 years agoFix bug in configure 'vlan-strip-offload on' first, then configure "set interface... 66/3866/3
jerryian [Fri, 18 Nov 2016 03:20:19 +0000 (11:20 +0800)]
Fix bug in configure 'vlan-strip-offload on' first, then configure "set interface mtu" command,
vlan-strip-offload option will be changed to off.

Change-Id: I1f39628fc8cde4e46ed5b2e3208253a07327de81
Signed-off-by: jerryian <gu.jian1@zte.com.cn>
7 years agodpdk: maintain per-worker trace buffer 69/3869/2
Damjan Marion [Fri, 18 Nov 2016 10:41:37 +0000 (11:41 +0100)]
dpdk: maintain per-worker trace buffer

Change-Id: I8234054cef4cadada6745a8c00c8df2c20daac33
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd the Makefile to Lua API which got gitignored and adjust local .gitignore 68/3868/2
Andrew Yourtchenko [Fri, 18 Nov 2016 10:39:56 +0000 (10:39 +0000)]
Add the Makefile to Lua API which got gitignored and adjust local .gitignore

Change-Id: I87358dc5dddc6964c128283f096d382492af5886
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
7 years agodpdk: remove unused code 67/3867/1
Damjan Marion [Fri, 18 Nov 2016 09:35:35 +0000 (10:35 +0100)]
dpdk: remove unused code

Change-Id: Iabb5a3b15e35fb062c04bbc076b19fe50910d412
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix VPP-132: leave IPv4 addresses in network byte order when sending. 16/3816/2
Matthew Smith [Mon, 14 Nov 2016 14:31:21 +0000 (08:31 -0600)]
Fix VPP-132: leave IPv4 addresses in network byte order when sending.

Change-Id: Ibae771e7cba0a3e834382f43d4bc07b457844b00
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
7 years agofeature: API/CLI to enable/disable feature per interface 24/3824/4
Pavel Kotucek [Tue, 15 Nov 2016 08:19:11 +0000 (09:19 +0100)]
feature: API/CLI to enable/disable feature per interface

Change-Id: I91d5f5648189143903eb973fdc60de9880fd47c2
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
7 years agoremove reference to Intel with dpdk docs 29/3829/2
Padraig Connolly [Tue, 15 Nov 2016 09:35:50 +0000 (09:35 +0000)]
remove reference to Intel with dpdk docs

*Changed configure files to say DPDK instead of Intel DPDK
*Changed rpm and deb config files to say DPDK instead of Intel DPDK
*Changed vnet Makefile to say DPDK instead of Intel DPDK

Change-Id: Ic6e3eacf2341af873d4bd2e036d5afa857ca6355
Signed-off-by: Padraig Connolly <padraig.connolly@intel.com>
7 years agoFix coverity warnings, VPP-486 64/3864/2
Dave Barach [Thu, 17 Nov 2016 16:36:59 +0000 (11:36 -0500)]
Fix coverity warnings, VPP-486

Change-Id: If98e5e00eede8f2aa9f17517c726b337c98e5467
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoFixup Path weights of 0 63/3863/2
Neale Ranns [Wed, 16 Nov 2016 11:47:44 +0000 (11:47 +0000)]
Fixup Path weights of 0

A path wight of 0 is a meaningless value. We can either reject it and thus expect CLI/API clients to always write a non-zero value, or we can accept it and assume the intent was a weight of 1 - this fix does the latter.

Change-Id: Ide736dbbb8376f85441f5a67388d5e3acad4d34e
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agodpdk: remove efd 37/3837/4
Damjan Marion [Tue, 15 Nov 2016 18:47:58 +0000 (19:47 +0100)]
dpdk: remove efd

Change-Id: I761af883403b6740bd24ce196ae0bfe6bc77b408
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoPut address in top bytes for the nexthop in vl_api_fib_path_t (VPP-532) 59/3859/2
Steven [Wed, 16 Nov 2016 21:26:27 +0000 (13:26 -0800)]
Put address in top bytes for the nexthop in vl_api_fib_path_t (VPP-532)

VPP-500 added the API for the fib dump capability. However, it puts the address of the
nexthop in the low bytes while the top bytes are padded with 0's if the address is ipv4.
The address field is defined as 16 bytes to accommodate both ipv4 and ipv6.
This fix is to correct the issue and put the address of the nexthop in the top bytes.

Change-Id: I429dec662e32040b186dfc323801ef49b76a42a3
Signed-off-by: Steven <sluong@cisco.com>
7 years agoFix 4 typos 46/3846/2
Dave Barach [Wed, 16 Nov 2016 13:04:58 +0000 (08:04 -0500)]
Fix 4 typos

As given, the macro was ignoring its bi0...bi3 arguments, and would
only work if the arguments happened to be given as pi0..pi3

Change-Id: I5a8b163fcfc6b8197534d474fcd952b2e8b2694b
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoVPP-533 Fix ping race condition in JVpp 17/3817/3
Maros Marsalek [Mon, 14 Nov 2016 15:14:58 +0000 (16:14 +0100)]
VPP-533 Fix ping race condition in JVpp

Improper synchronization between ping_send and ping_reply_handle

Change-Id: I844c96bc3f5cd750a1c43188d3133c92f8f14e38
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
7 years agoVPP-534 Remove references to DTOs created in JVpp 45/3845/2
Maros Marsalek [Wed, 16 Nov 2016 10:29:33 +0000 (11:29 +0100)]
VPP-534 Remove references to DTOs created in JVpp

JVM objects allocated from a native thread need to be freed,
they are not subject to GC.

Change-Id: If1e140d2ceaec93631735ae7665f45db5aacf7cf
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
7 years agoTune the ethernet input untagged l2-bridging case 55/3855/1
Dave Barach [Wed, 16 Nov 2016 15:23:50 +0000 (10:23 -0500)]
Tune the ethernet input untagged l2-bridging case

Change-Id: I62fe0834e1031e191787a26452fb167c33e30ffd
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agovhost: Fix bug during interface deletion 41/3841/3
Pierre Pfister [Wed, 16 Nov 2016 02:43:29 +0000 (02:43 +0000)]
vhost: Fix bug during interface deletion

This small patch fixes a critical bug during interface deletion.
While the interface was removed, thread placement was not corrected
properly.

This should help fixing VPP-528,VPP-531 as well as other FDS bug reports.

Change-Id: I02f9d44c62b6ca4c0b6d73f476600b342846507f
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoAdd an ability to punt all unknown UDP traffic to the host 40/3840/2
Alexander Popovsky (apopovsk) [Tue, 15 Nov 2016 23:36:23 +0000 (15:36 -0800)]
Add an ability to punt all unknown UDP traffic to the host

By default, VPP replies with ICMP error: port unreachable when receives
an ‘unknown’ UDP (destination port with no registered listener) packet.

An existing punt() API is extended to accept ALL (~0) as a L4 port
number and if used redirects all ‘unknown’ UDP packets to the host.

New ‘all’ option is added to the “set punt udp” CLI as well.

Change-Id: I444fc5e32ffa3f0f085bb17708bf32b883ba09df
Signed-off-by: Alexander Popovsky (apopovsk) <apopovsk@cisco.com>
7 years agoVPP-521: Classify API enhancement to redirect traffic to pre-defined VRF 31/3731/8
Steve Shin [Tue, 8 Nov 2016 18:47:10 +0000 (10:47 -0800)]
VPP-521: Classify API enhancement to redirect traffic to pre-defined VRF

Ingress packets are punted to the “Input ACL node” where traffic is
classified based on n-tuple keys. If no matched session is found from
the classify tables, then it will be passed to “the lookup node” for
normal packet forwarding. If a classify session is hit from one of
classify tables, then packet vnet buffer field sw_if_index[VLIB_TX]
will be updated to the new FIB index used for subsequent IP lookup
for this packet.

Change-Id: Ifdea63196ddb81c2d5c43b8c98e11ddbf5b11858
Signed-off-by: Steve Shin <jonshin@cisco.com>
7 years agofeature: remove old interface output feature code 39/3839/2
Damjan Marion [Tue, 15 Nov 2016 22:20:01 +0000 (23:20 +0100)]
feature: remove old interface output feature code

Only consumer was ipsec which is now moved to the new
ip{4,6}-output feature arc.

Change-Id: I06008e67b5449c25eae77f28e1688521af3a23e0
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agofeature: convert ipsec output to new feature code 33/3833/2
Matus Fabian [Tue, 15 Nov 2016 14:08:51 +0000 (06:08 -0800)]
feature: convert ipsec output to new feature code

Change-Id: Ia287298bac76c8e6bf760d48c1e1e697de52999c
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agothreads: add support for multiple worker handoff queues 29/3729/5
Damjan Marion [Tue, 8 Nov 2016 16:37:01 +0000 (17:37 +0100)]
threads: add support for multiple worker handoff queues

Change-Id: I2452df3c493eeb0a5078d53a230df6906651c057
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agospan: add feature (rx only) (VPP-185) 82/3682/16
Pavel Kotucek [Fri, 4 Nov 2016 08:58:01 +0000 (09:58 +0100)]
span: add feature (rx only) (VPP-185)

Change-Id: I0f7cbf06b5a5acd745d13c9f5c761ea18132107b
Signed-off-by: marek <mazavods@gmail.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVPP-393: Subinterface is still used after deletion 46/3446/3
Pavel Kotucek [Mon, 17 Oct 2016 13:31:59 +0000 (15:31 +0200)]
VPP-393: Subinterface is still used after deletion

Fixed bug in delete of sub-interface, if sub-interface is xconnected it
was not deleted correctly (show interface address fails).

Interface is set to L3 mode before deletion.

Fixed help in API command.
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
Change-Id: Ibe781e4b53422e6535e34ec72dbe274f9045f051

7 years agoUpdate test documentation. 76/3776/9
Matej Klotton [Fri, 11 Nov 2016 10:38:55 +0000 (11:38 +0100)]
Update test documentation.

- update IRB, IPv4, ipv6 doc
- revert 778c2765c8ea5c6628f6d668847f0b9ae06dbf3d

Change-Id: I9af5ed9329ce5fe01392cf28d5bf321cfc647e48
Signed-off-by: Matej Klotton <mklotton@cisco.com>
7 years agoUpdate CSIT tests 161106 -> 161113 05/3805/2
Jan [Mon, 14 Nov 2016 08:53:37 +0000 (09:53 +0100)]
Update CSIT tests 161106 -> 161113

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

Change-Id: I3a475b34764cfe3e433ce7ab8cfc5501f6131690
Signed-off-by: Jan <jgelety@cisco.com>
7 years agoDPDK_HQoS: fix coverity warnings on uninitialized variables 03/3803/2
Jasvinder Singh [Sat, 12 Nov 2016 11:49:10 +0000 (11:49 +0000)]
DPDK_HQoS: fix coverity warnings on uninitialized variables

Change-Id: I76437b76619a280a44e4def4d6c048eaf3926102
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
7 years agothreads: add assert to silence coverity warning 07/3807/2
Damjan Marion [Mon, 14 Nov 2016 09:22:48 +0000 (10:22 +0100)]
threads: add assert to silence coverity warning

Change-Id: I381786b26050f2dfcb4c74094309cf2114d26d85
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agobuffer: clone free_list to each vlib_main on creation 91/3791/3
Damjan Marion [Fri, 11 Nov 2016 20:35:18 +0000 (21:35 +0100)]
buffer: clone free_list to each vlib_main on creation

Currently only packet-generator is creating free_lists
during runtime. This avoids crash when buffer is freed
on different worker thread.

Change-Id: If2ae066a12cf7c4b3267d56d8566806f31cf7ffc
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoDump routes (VPP-500) 70/3670/9
Steven [Wed, 2 Nov 2016 17:40:09 +0000 (10:40 -0700)]
Dump routes (VPP-500)

Change-Id: I86e7382395a8b6471a0deaf57163718d41b71b83
Signed-off-by: Steven <sluong@cisco.com>
7 years agodpdk: add build support for DPDK 16.11 release 22/3822/2
Damjan Marion [Mon, 14 Nov 2016 20:45:20 +0000 (21:45 +0100)]
dpdk: add build support for DPDK 16.11 release

Change-Id: Icec79bfc5d786cd293520b1dcc6b8dccd1419acb
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agomake test: improve naming of temporary pcap files 18/3818/1
Klement Sekera [Mon, 14 Nov 2016 08:49:09 +0000 (09:49 +0100)]
make test: improve naming of temporary pcap files

Change-Id: I0f4e83aab8bec80562bd90e8035f602ce903cd3e
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoAdd support for multi FIB DHCPv6 Proxy 54/3754/4
Wojciech Dec [Tue, 1 Nov 2016 15:44:06 +0000 (16:44 +0100)]
Add support for multi FIB DHCPv6 Proxy

- Support multiple DHCPv6 server targets across VRFs
- Allows clients and servers to be in different VRFs
- Aligns CLI and VAT for DHCPv6 to DHCPv4

Change-Id: If47756b3a51dc1b9d045a32b7d32ceb80c1746e2
Signed-off-by: Wojciech Dec <wdec@cisco.com>
7 years agoAdd clang to 'make verify' 01/3801/3
Damjan Marion [Sat, 12 Nov 2016 00:23:55 +0000 (01:23 +0100)]
Add clang to 'make verify'

Change-Id: I9ba84632da93ffb7713064db51f2888fc212713a
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix a bug in the timing wheel 81/3781/3
Klement Sekera [Fri, 11 Nov 2016 04:58:10 +0000 (05:58 +0100)]
Fix a bug in the timing wheel

Properly propagate vector allocated in advance_cpu_time_base() for a
special case, when the expired_user_data parameter passed to
timing_wheel_advance() is NULL and the only expired event is in the
overflow pool.

Change-Id: I5cefab0e881958334791aaa6354ec08225af23c1
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoUse gcc for start in 'make verify' 98/3798/3
Damjan Marion [Fri, 11 Nov 2016 22:59:48 +0000 (23:59 +0100)]
Use gcc for start in 'make verify'

Change-Id: I8ef5f8aeb9af5127337163c4767bfa92b62f8175
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agopseudo atomic adjacency updates 71/3771/3
Neale Ranns [Thu, 10 Nov 2016 20:35:14 +0000 (20:35 +0000)]
pseudo atomic adjacency updates

When an adjacency changes from incomplete to complete (arp to rewrite) and vice-versa, that update must produce valid behavour w.r.t. the packets that continue to encounter it.

Change-Id: Icc2709aff9807c5d24f91ef7649268991ad9a45d
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoClean up coverity warnings, VPP-486 96/3796/2
Dave Barach [Fri, 11 Nov 2016 22:27:51 +0000 (17:27 -0500)]
Clean up coverity warnings, VPP-486

Change-Id: I709e7cf0bb52d8e6cdc9ddb3b7648660204aa3bd
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoAdd 'make verify' target to top-level makefile 97/3797/1
Damjan Marion [Fri, 11 Nov 2016 22:31:55 +0000 (23:31 +0100)]
Add 'make verify' target to top-level makefile

Change-Id: I992df2b6ded9533d32f5f936e6d651055061f054
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd single-loop test variant to L2BD and L2XC tests 97/3597/7
Jan [Wed, 26 Oct 2016 13:44:27 +0000 (15:44 +0200)]
Add single-loop test variant to L2BD and L2XC tests

 - create single-loop version of tests
 - update doc strings

 - add possibility to log CLI string for logging level "info"

Change-Id: Ibc9e5650b8a33d2ed168a8440c2ae03227be60bb
Signed-off-by: Jan <jgelety@cisco.com>
7 years agoLuajit API and some examples 90/3790/2
Andrew Yourtchenko [Fri, 11 Nov 2016 16:32:52 +0000 (16:32 +0000)]
Luajit API and some examples

Change-Id: Ia140c4750f06870c40b7058c4afb2e20ca633a49
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
7 years agoFix clang compile errors in plugins 89/3789/1
Neale Ranns [Fri, 11 Nov 2016 16:14:30 +0000 (16:14 +0000)]
Fix clang compile errors in plugins

Change-Id: I2c2df9b5ba567bde2564c924bd9ad2fbbac775c4
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agofeature: convert all feature nodes to new feature infra 59/3759/8
Damjan Marion [Wed, 9 Nov 2016 18:54:20 +0000 (19:54 +0100)]
feature: convert all feature nodes to new feature infra

Change-Id: I34c527ba910fb282a95458b78d1d684eb337905e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd IRB test 96/3696/6
Matej Klotton [Fri, 4 Nov 2016 10:11:44 +0000 (11:11 +0100)]
Add IRB test

- JIRA: CSIT-255
- create loopback interfaces
- move pg-interface specific arp and neighbor discovery from vpp_interface to vpp_pg_interface
- base configuration of IRB tests
- IP test scenario

Change-Id: I9945a188163652a4e22325877aef008c4d029557
Signed-off-by: Matej Klotton <mklotton@cisco.com>
7 years agoip_frag: fix implicit enum conversion 55/3755/2
Damjan Marion [Wed, 9 Nov 2016 23:41:13 +0000 (00:41 +0100)]
ip_frag: fix implicit enum conversion

Change-Id: I024b8d79cced45cf53a7a912319eca2cc932b10e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agofeature: fix init issue when multiple arc are present 69/3769/2
Damjan Marion [Thu, 10 Nov 2016 17:01:42 +0000 (18:01 +0100)]
feature: fix init issue when multiple arc are present

Change-Id: I9c76b6d7ffebeeb92d5eeca5852c487d73151f28
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoEnable verification received packet for LB test 63/3763/1
Matej Klotton [Thu, 10 Nov 2016 14:36:19 +0000 (15:36 +0100)]
Enable verification received packet for LB test

Change-Id: I9c8a2f5744f322b2bd91c5ae24aeb1279cd11e0c
Signed-off-by: Matej Klotton <mklotton@cisco.com>
7 years agoVXLAN tunnel encap forwarding optimization with FIB 2.0 17/3717/13
John Lo [Mon, 7 Nov 2016 23:30:47 +0000 (18:30 -0500)]
VXLAN tunnel encap forwarding optimization with FIB 2.0

Optimize VXLAN encap node so that vxlan4-encap node is used for IP4
and vxlan6-encap node is used for IP6 underlay. Also stack the VXLAN
encap nodes to the appropriate FIB IP4 or IP6 load-balance node
instead of ip4/ip6-lookup node to save IP lookup operation.

For VXLAN decap node, check VXLAN header FLAGS field for each packet
and remove the code to support decap-next for IP4 or IP6. These decap-
next values were intended for experimentation purposes and not needed
any more since VXLAN-GPE tunnel is supported. The decap-next field is
still kept in API for backward compatibility and its value has no
effect. Decap next for both vxlan4-decap and vxlan6-decap nodes is
always l2-input node.

Change-Id: I8ac95774946549ec403ab691f999df0c006b460f
Signed-off-by: John Lo <loj@cisco.com>
7 years agoFix Compile errors from clang in FIB2.0 code 52/3752/2
Neale Ranns [Wed, 9 Nov 2016 17:49:42 +0000 (17:49 +0000)]
Fix Compile errors from clang in FIB2.0 code

Change-Id: Ief769c966888094944b7a6b7f26527e7eff6103f
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoFix DHCP proxy when used for non-default FIB tables 53/3753/1
Igor Mikhailov (imichail) [Wed, 9 Nov 2016 20:38:33 +0000 (12:38 -0800)]
Fix DHCP proxy when used for non-default FIB tables

An issue is that the server->server_fib_index is overwritten by
some incorrect value on subsequent calls to the function - e.g.
when setting DHCP proxy for the same FIB table several times.

Change-Id: I2e129b47f5c8fe3a0b924a7d71bb83e6fc53e9b5
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
7 years agoFix a batch of coverity warnings, VPP-486 50/3750/1
Dave Barach [Wed, 9 Nov 2016 16:28:36 +0000 (11:28 -0500)]
Fix a batch of coverity warnings, VPP-486

Change-Id: I0379844824b4c2eb42588d0fb8e1a7eb441e923f
Signed-off-by: Dave Barach <dave@barachs.net>