vpp.git
7 years agoVPP-524: Add support to API to dump IPsec SPDs 99/3699/3
Matthew Smith [Fri, 4 Nov 2016 12:58:37 +0000 (07:58 -0500)]
VPP-524: Add support to API to dump IPsec SPDs

Change-Id: Ief37bef8db9f194fe2a75e0eb223a41bc739bc4f
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
7 years agovlib: fix cacheline alignement in several structs 00/3700/2
Damjan Marion [Fri, 4 Nov 2016 13:41:44 +0000 (14:41 +0100)]
vlib: fix cacheline alignement in several structs

sizeof(vlib_frame_queue_t) was 208 bytes so non-zero elements
of array were not aligned with cacheline.

Change-Id: I626615cb64fe9aa86122881a1fff1c5bcca1ec20
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agofeature: store arc index in vlib_buffer 97/3697/5
Damjan Marion [Fri, 4 Nov 2016 10:00:27 +0000 (11:00 +0100)]
feature: store arc index in vlib_buffer

Previos implementation imposed a limit that node can be member of
only one feature arc as feature arc index was stored in node runtime.
Now start node stores index into vlib_buffer_t and feature
nodes are taking it from there.

Change-Id: I252841083bc292af7ed36bf1ac652f2b8c16bfb8
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoDHCPv6: relay reply fixes (VPP-510) 01/3501/13
Wojciech Dec [Thu, 20 Oct 2016 09:25:37 +0000 (11:25 +0200)]
DHCPv6: relay reply fixes (VPP-510)

Fixes DHCPv6 relay reply message corruption.

Change-Id: Iead995f29d2fa9cbb04f0f9d42b3aa9002267117
Signed-off-by: Wojciech Dec <wdec@cisco.com>
7 years agovhost-user: multiqueue support 22/2922/24
Pierre Pfister [Wed, 21 Sep 2016 07:04:59 +0000 (08:04 +0100)]
vhost-user: multiqueue support

This patch adds multi-queue support to non-dpdk's vhost-user
driver.
Waiting for a unified way to manage threads, this patch
defines a way to assign threads to interfaces that is
specific to vhost.

Change-Id: I86298788b1a4e886c5431f187dc17175d12c7a8b
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agovppctl: Do not use sudo if already root 95/3695/2
Pierre Pfister [Thu, 3 Nov 2016 13:14:29 +0000 (13:14 +0000)]
vppctl: Do not use sudo if already root

When using sudo, environment variable such as the PATH
are overwritten.
This patch just checks if user is already root and does
not use sudo in such situation.
This allows using approaches like:
sudo env PATH=path/to/vpp-binary/:$PATH vppctl

Not really important in production setups, but this is handy
for testing.

Change-Id: I079c104d026ae7d378468380b012279a6e5d765d
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agovlib: add vlib_buffer_copy function 91/3691/2
Damjan Marion [Thu, 3 Nov 2016 19:16:04 +0000 (20:16 +0100)]
vlib: add vlib_buffer_copy function

It works with and without DPDK so it allws us to enable
lawful-intercept code in vpp_lite images.

Change-Id: I08f234cbc652c3ff47a6123a43b9e7f8bdcd5534
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoCrash when adding duplicate paths 92/3692/2
Neale Ranns [Thu, 3 Nov 2016 21:15:28 +0000 (14:15 -0700)]
Crash when adding duplicate paths

Change-Id: Icd29c9013ae70f5444eb940aff4f08589e755f48
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoTest framework: improve gdbserver handling 80/3680/2 v17.01-rc0
Klement Sekera [Thu, 3 Nov 2016 04:36:01 +0000 (05:36 +0100)]
Test framework: improve gdbserver handling

Produce a user-friendly message if gdbserver is not available, instead
of cryptic exception.

Change-Id: Ia0d99e0488d2ee6e8af764b466dae2639f17ea55
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoFail to register Java API for plugin that was not loaded (VPP-522) 81/3681/2
Marek Gradzki [Thu, 3 Nov 2016 09:52:43 +0000 (10:52 +0100)]
Fail to register Java API for plugin that was not loaded (VPP-522)

Change-Id: Idb95888ae6fc7a9df197a919e3d3283f915f4a4c
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoFix vpp-plugins rpms 76/3676/2
Ed Warnicke [Wed, 14 Sep 2016 23:58:33 +0000 (16:58 -0700)]
Fix vpp-plugins rpms

vpp by default looks in /usr/lib/vpp_plugins
rpmbuild has ${_libdir} as /usr/lib64

Thus vpp doesn't see the plugins.

Change-Id: Iecbc491940678728305c181b04bb0914ad174bf1
Signed-off-by: Ed Warnicke <eaw@cisco.com>
(cherry picked from commit 2dfd08242d66fb79c9a861c6a0c7fee45ef6bc60)

7 years agoRemove unused jvpp dependency on plugins' control_ping 83/3683/2
Marek Gradzki [Thu, 3 Nov 2016 12:33:07 +0000 (13:33 +0100)]
Remove unused jvpp dependency on plugins' control_ping

Change-Id: I6ebb69443e79e60c7ce6afded6a2d3af85048e6e
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoReset frame length after dispatch when recycling frames 02/3202/2
Dave Barach [Thu, 29 Sep 2016 14:53:44 +0000 (10:53 -0400)]
Reset frame length after dispatch when recycling frames

Fixes a gross bug when enqueuing x->x->error-drop or similar

Change-Id: Ie1dc10371de4a265f5131b67cab7a62ed460a1fc
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoTimestamp now a 64-bit integer: ns since 1/1/1970 74/3674/3
Dave Barach [Wed, 2 Nov 2016 22:37:56 +0000 (18:37 -0400)]
Timestamp now a 64-bit integer: ns since 1/1/1970

Properly initialize allocated buffers

Change-Id: Ib2005e605c89a164a4856790db6968fcd7520f5c
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoAdding Sequence Number - Per Packet Counter(PPC) support for iOAM6. 82/2282/20
AkshayaNadahalli [Tue, 9 Aug 2016 08:08:04 +0000 (13:38 +0530)]
Adding Sequence Number - Per Packet Counter(PPC) support for iOAM6.

- Added support in classifier session to identify a flow to be iOAM6 encap/decap
- Sequence number as part of iOAM6 E2E header is created as a plugin.

Change-Id: Ib7605de45aecff25d684d099b525f8dc96ee7038
Signed-off-by: AkshayaNadahalli <anadahal@cisco.com>
7 years agofeature: recover "show ip features" command 73/3673/1
Damjan Marion [Wed, 2 Nov 2016 20:38:53 +0000 (21:38 +0100)]
feature: recover "show ip features" command

Removed by accident.

Change-Id: Ifebbe99eb2825cb6ee7d33d55cf3c087a9817f72
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agofeature: all input nodes must have same nexts 62/3662/3
Damjan Marion [Wed, 2 Nov 2016 13:48:21 +0000 (14:48 +0100)]
feature: all input nodes must have same nexts

Change-Id: Ie4c820933114af2269c99531856c45b0271a4a3e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoethernet: fix wrong start node for ethernet tx feature path 66/3666/2
Damjan Marion [Wed, 2 Nov 2016 14:51:12 +0000 (15:51 +0100)]
ethernet: fix wrong start node for ethernet tx feature path

Change-Id: I3e02588e8c05ec50eacbe7c10cd5ac185daad43b
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoUpdate CSIT tests 161024 -> 161030 68/3668/2
Jan [Wed, 2 Nov 2016 15:29:05 +0000 (16:29 +0100)]
Update CSIT tests 161024 -> 161030

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

Change-Id: I9f7418a2161e6411375c2d7ff1f3f686b991fb87
Signed-off-by: Jan <jgelety@cisco.com>
7 years agovpp: remove unused code 64/3664/2
Damjan Marion [Wed, 2 Nov 2016 14:39:57 +0000 (15:39 +0100)]
vpp: remove unused code

Change-Id: I81c5b0f9acbffa41a75de497bf6dd68936813012
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoImprove debug-cli in test framework 56/3656/2
Klement Sekera [Wed, 2 Nov 2016 08:25:05 +0000 (09:25 +0100)]
Improve debug-cli in test framework

Opening debug-cli only makes sense if there is time for user to use it,
so either the run must be debugged or stepped. Only open the debug-cli
in these cases.

Change-Id: Ied276071797a549880d730cda43c59230a412efe
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoAllow empty DPDK device init config 57/3657/2
Pierre Pfister [Wed, 2 Nov 2016 10:06:49 +0000 (10:06 +0000)]
Allow empty DPDK device init config

This patch allows for empty dpdk device configuration
such as: dpdk { dev 0000:0a:00.0 { } }

Instead of exiting.

Change-Id: If9488eecc7fb1e0b5c6626f9c074649b39b727d3
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoadj: fix typos 52/3652/2
Damjan Marion [Wed, 2 Nov 2016 00:21:05 +0000 (01:21 +0100)]
adj: fix typos

Change-Id: Ib5b5a15223ac9252e9cacd163bd870b009ec3b63
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk-hqos: don't hold up packets indefinitely under low load 46/3646/6
David Hotham [Tue, 1 Nov 2016 10:51:24 +0000 (10:51 +0000)]
dpdk-hqos: don't hold up packets indefinitely under low load

Change-Id: If884637a6db0cb813a40920194795da2e98c8b23
Signed-off-by: David Hotham <david.hotham@metaswitch.com>
7 years agofeature: add new feature handling code and device-input features 45/3445/25
Damjan Marion [Fri, 28 Oct 2016 18:30:15 +0000 (20:30 +0200)]
feature: add new feature handling code and device-input features

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

7 years agoFix recursion loop - recurse through cover 50/3650/2
Neale Ranns [Tue, 1 Nov 2016 20:38:53 +0000 (20:38 +0000)]
Fix recursion loop - recurse through cover

Change-Id: I07870122f90e41fbb216b2f426bccbfd94049cd6
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoVPP-437: ip6 hbh processing with FIB 2.0 53/3153/6
Shwetha [Tue, 27 Sep 2016 07:04:05 +0000 (08:04 +0100)]
VPP-437: ip6 hbh processing with FIB 2.0

1. Modifies ip6 hbh selective processing in lookup
only when non-recursive routes are present.
2. Adds ip6 hbh processing in load balance.
3. Cleanup of ip6 iOAM hbh plugin formatting and
CLI handling found while testing the changes.
4. Deleted wrong asserts in dual loop for add
and pop iOAM hbh nodes. The current data of the buffer
ip6 start and will not be 0
5. Deleted set ioam destination cli and associate functions.
iOAM add/pop is enabled via classifier, this cli is no longer
used.

Change-Id: I3aac71ad512762c0b2b602fe88fe0291b85d39c7
Signed-off-by: Shwetha <shwethab@cisco.com>
7 years agoMPLS Exp-null Tests 48/3648/2
Neale Ranns [Tue, 1 Nov 2016 10:05:08 +0000 (10:05 +0000)]
MPLS Exp-null Tests

Add some 'make test' unit tests for MPLS explicit NULL label handling.
Fix the stacking of the MPLS load-balance result form the lookup onto the IPx lookup object.

Change-Id: I890d1221b8e3dea99bcc714ed9d0154a5f602c52
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agovppinfra: add STATIC_ASSERT macro 49/3649/2
Damjan Marion [Tue, 1 Nov 2016 14:16:30 +0000 (15:16 +0100)]
vppinfra: add STATIC_ASSERT macro

Change-Id: Icc4e74ae1627c5b97746ed64955a3dc089e3998f
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agofix typo in .gitignore 47/3647/2
Klement Sekera [Tue, 1 Nov 2016 11:33:40 +0000 (12:33 +0100)]
fix typo in .gitignore

Change-Id: I09c25b855c09f55da7e836e641570befead40f4f
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agonode: ensure that vlib_node_runtime_t is cacheline sized 45/3645/1
Damjan Marion [Tue, 1 Nov 2016 00:26:01 +0000 (01:26 +0100)]
node: ensure that vlib_node_runtime_t is cacheline sized

Change-Id: Ib14ba63d09212a172fe52b01131404bf50cc494d
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agol2: fix l2-patch node 44/3644/2
Damjan Marion [Mon, 31 Oct 2016 22:21:46 +0000 (23:21 +0100)]
l2: fix l2-patch node

This node was not setting vnet_buffer (b0)->sw_if_index[VLIB_TX]
properly.

Change-Id: I3e9f095da5f79c4186e3988ef315a7045ac85708
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: use u32 for next0 43/3643/2
Damjan Marion [Mon, 31 Oct 2016 22:23:34 +0000 (23:23 +0100)]
dpdk: use u32 for next0

Change-Id: I0158a290736f68d0d56dff2f15dd18518059efd2
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoconfig: rename ip_config_main_t to vnet_feature_config_main_t 42/3642/2
Damjan Marion [Mon, 31 Oct 2016 22:18:04 +0000 (23:18 +0100)]
config: rename ip_config_main_t to vnet_feature_config_main_t

It will not be used for IP only...

Change-Id: I90ef3030aff7f9e24767553f019cabc1ea987126
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoadd vpp debugging support to test framework 41/3641/5
Klement Sekera [Fri, 28 Oct 2016 11:20:27 +0000 (13:20 +0200)]
add vpp debugging support to test framework
improve test documentation

Change-Id: Ia9678aa2532ecb4cb33736aedb4a31aa3f2a3f93
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoUpdate _slabshr fields when updating HQoS masks 40/3340/3
David Hotham [Tue, 11 Oct 2016 09:30:52 +0000 (09:30 +0000)]
Update _slabshr fields when updating HQoS masks

Change-Id: Ia1042622c656861a80b856115aeb3c2e5cf5ea2a
Signed-off-by: David Hotham <david.hotham@metaswitch.com>
7 years agoVPP-120: add custom types support to jvpp 99/3199/11
Marek Gradzki [Thu, 29 Sep 2016 11:22:35 +0000 (13:22 +0200)]
VPP-120: add custom types support to jvpp

Generates java classes based on typeonly definitions
(hashcode, equals and toString methods are also included).

Adds JNI handling for request and reply messages
(also arrays of custom types).

Change-Id: I16f1cea17899704426aa083fad1cb800a8d115df
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agovppinfra: use 64-bit crc32 instruction in bihash_24_8 28/3628/3
Damjan Marion [Fri, 28 Oct 2016 20:35:17 +0000 (22:35 +0200)]
vppinfra: use 64-bit crc32 instruction in bihash_24_8

Change-Id: Ibeb6d35e15a8d332753df7c352c0b51c277a0ee5
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agovhost-user: fix crash in vhost_user_intfc_tx (VPP-519) 29/3629/2
Damjan Marion [Fri, 28 Oct 2016 21:52:40 +0000 (23:52 +0200)]
vhost-user: fix crash in vhost_user_intfc_tx (VPP-519)

The crash was the result of indexing off the end of the next[] array.
Removing that prefetch code completelly, as it is questionable
how much it helps so late in the game.

Change-Id: I7bc83483a1088437edb4ac0f95a54c39afce136b
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVPP-478: SNAT address range overlapping 65/3565/2
Matus Fabian [Tue, 25 Oct 2016 11:19:26 +0000 (04:19 -0700)]
VPP-478: SNAT address range overlapping

Ignore adding duplicate address.

Change-Id: Icbb76bbcb3a78a18acb1a50d5d8ab777e9f9bd36
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agoVPP-459: SNAT dump API for in and out interfaces 39/3539/2
Matus Fabian [Mon, 24 Oct 2016 10:30:00 +0000 (03:30 -0700)]
VPP-459: SNAT dump API for in and out interfaces

Change-Id: Ie0cba0778b094eaafa960d3f432199e1e3b2d116
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agoInitial deb packaging of vpp-python-api 30/3630/3
Ed Warnicke [Fri, 28 Oct 2016 22:52:36 +0000 (22:52 +0000)]
Initial deb packaging of vpp-python-api

Change-Id: I14d5180d6abd59b813906011718121a2bbc9bafd
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
7 years agoIPv6 Classify Forwarding Graph errors 21/3621/3
Neale Ranns [Fri, 28 Oct 2016 13:31:54 +0000 (06:31 -0700)]
IPv6 Classify Forwarding Graph errors

Fix a few places where the protocol of the DPO object was incorrectly set and hence the graph traversed by the packet jumped between ip4 and ip6 nodes.

Change-Id: I75c4ecfdf79df39f5dbb7c68f1fc82ff04aaed28
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
7 years agovppinfra: fix issue with bihash_8_8 hash function (VPP-518) 27/3627/2
Damjan Marion [Fri, 28 Oct 2016 20:17:38 +0000 (22:17 +0200)]
vppinfra: fix issue with bihash_8_8 hash function (VPP-518)

Change-Id: Ia9a484575d0142e89ec5b6b4c6c2e702e1098a1e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agopolicer: replace uintX_t with uX, fix style 06/3606/2
Damjan Marion [Thu, 27 Oct 2016 08:27:00 +0000 (10:27 +0200)]
policer: replace uintX_t with uX, fix style

Change-Id: Ie4a0ba57d5c672ab04fe37801836f65d8731a90a
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoUpdate test framework after API function change 05/3605/2
Juraj Sloboda [Thu, 27 Oct 2016 08:44:25 +0000 (10:44 +0200)]
Update test framework after API function change

Change-Id: I326ef57fa0c691c5a1cecea0364d770b6f7a73c8
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
7 years agoFix potential L2 forwarding crash with stale L2FIB entry (VPP-516) 12/3612/2
John Lo [Thu, 27 Oct 2016 15:17:02 +0000 (11:17 -0400)]
Fix potential L2 forwarding crash with stale L2FIB entry (VPP-516)

On moving interface between L2 and L3 forwarding modes, adjust the
l2-output node next index for the sw_if_index of the interface so
packet output via stale MAC entries in L2 FIB will be dropped.

Change-Id: I25afd7a617edb4ae35ce296bac33e62683edad9a
Signed-off-by: John Lo <loj@cisco.com>
7 years agoFix coverity issues in LISP 96/3596/2
Filip Tehlar [Wed, 26 Oct 2016 12:58:18 +0000 (14:58 +0200)]
Fix coverity issues in LISP

Change-Id: Ifef27540f02f423070e8843951be5cba0acea8cf
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoPer-packet IPFIX record generation plugin 18/3318/6
Dave Barach [Fri, 7 Oct 2016 15:30:23 +0000 (08:30 -0700)]
Per-packet IPFIX record generation plugin

Change-Id: Ia790aa018e70d67ed343e3e466d1b33b22560fc0
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agofeatures: fix crash due to missing null termination 01/3601/2
Damjan Marion [Wed, 26 Oct 2016 21:50:47 +0000 (23:50 +0200)]
features: fix crash due to missing null termination

Change-Id: I98b407f9b698307c5a0007b198a734674b33f925
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix description of devel package. 04/3404/4
Thomas F Herbert [Sat, 1 Oct 2016 22:09:33 +0000 (18:09 -0400)]
Fix description of devel package.

Change-Id: Ia289299691daa2ed47f0129d2695678e1d390ab8
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
7 years agodpdk: enable building with dpdk 16.11-rc1 71/3571/3
Damjan Marion [Tue, 25 Oct 2016 12:54:38 +0000 (14:54 +0200)]
dpdk: enable building with dpdk 16.11-rc1

Works with:

http://dpdk.org/browse/dpdk/snapshot/dpdk-16.11-rc1.tar.xz

placed into dpdk/ or ~/Downloads

Change-Id: I17f6a721529dbefc796f555e2525d157b9bf8740
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix unformat-at-eof bug 00/3600/2
Dave Barach [Wed, 26 Oct 2016 18:03:20 +0000 (14:03 -0400)]
Fix unformat-at-eof bug

Change-Id: Id9a64303b1d415b55a3bc0ea1483df6fc2eb5011
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agorefactor test framework 45/3345/17
Klement Sekera [Tue, 11 Oct 2016 09:47:09 +0000 (11:47 +0200)]
refactor test framework

Change-Id: I31da3b1857b6399f9899276a2d99cdd19436296c
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Matej Klotton <mklotton@cisco.com>
Signed-off-by: Jan Gelety <jgelety@cisco.com>
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
7 years agodpdk: remove support for dpdk 16.04 75/3575/2
Damjan Marion [Tue, 25 Oct 2016 16:53:41 +0000 (18:53 +0200)]
dpdk: remove support for dpdk 16.04

This also removes old DPDK vhost-user code which doesn't help
much with DPDK 16.07 or newer.

Change-Id: Ic996df1eaccc33acd3fa6cabeaf7381a672c2a90
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: remove support for dpdk 2.2 74/3574/2
Damjan Marion [Tue, 25 Oct 2016 16:38:29 +0000 (18:38 +0200)]
dpdk: remove support for dpdk 2.2

Change-Id: I2d1a7063f3776a9070e75a627beb5d0e45a67874
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agodpdk: remove KNI support 73/3573/2
Damjan Marion [Tue, 25 Oct 2016 16:27:29 +0000 (18:27 +0200)]
dpdk: remove KNI support

This code is outdated and without real use case

Change-Id: I30628cc4ca293e5249aea3891173507cbfad8b61
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoUse only 24 bits for vni in lisp-gpe data packets 70/3570/3
Florin Coras [Tue, 25 Oct 2016 14:47:52 +0000 (16:47 +0200)]
Use only 24 bits for vni in lisp-gpe data packets

Change-Id: I5a8ff12dfa8d4d9f24275590ff8293e7eb7ffbb6
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agopython api - vla - allow the user to pass in a normal python list 33/3233/2
Gabriel Ganne [Thu, 22 Sep 2016 19:00:17 +0000 (21:00 +0200)]
python api - vla - allow the user to pass in a normal python list

Only add support for named variable-length-arrays as some api fo not
follow the expected order of length preceding the value.

Change-Id: I4c22c9b3c05f23edb3edc1cbc445be87b0a69162
Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
7 years agodpdk: remove dpdk_pmd_constructor_init 68/3568/2
Damjan Marion [Tue, 25 Oct 2016 13:45:10 +0000 (15:45 +0200)]
dpdk: remove dpdk_pmd_constructor_init

This is not needed anymore, likely because we use --whole-archive
parameter during linking.

Change-Id: Iab0f2ec647b63c59663faceacfbc60aa4a4b84a6
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoImprove equals generation for jvpp DTOs 56/3556/2
Marek Gradzki [Tue, 25 Oct 2016 05:57:30 +0000 (07:57 +0200)]
Improve equals generation for jvpp DTOs

Variable 'other' is no longer defined in equals method
of DTOs without defined fileds.
Fixes dead local store coverity issues.

Change-Id: I69eddf2b4b3f433149ff4d49e49c46515572d61a
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoImprove JNI code generation (array truncation) 37/3537/4
Marek Gradzki [Mon, 24 Oct 2016 08:34:16 +0000 (10:34 +0200)]
Improve JNI code generation (array truncation)

Fixes DEADCODE coverity issue:

size_t max_size = 0;
if (max_size != 0 && ...)

Change-Id: I0e3ea4e4ddddb476519490c6f00208379089397c
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoSupport IETF routing Yang models (VPP-503). 02/3502/5
Neale Ranns [Thu, 20 Oct 2016 12:39:34 +0000 (13:39 +0100)]
Support IETF routing Yang models (VPP-503).

Add support for special routes to send ICMP unreachable or admin prohibited.

Change-Id: Ia1ac65b0e5e925c0f9ebc7824141833b4e18f05e
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoUpdate CSIT tests 161017 -> 161024 53/3553/2
Jan [Mon, 24 Oct 2016 21:17:45 +0000 (23:17 +0200)]
Update CSIT tests 161017 -> 161024

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

Change-Id: Icb36e5a68f6c1ef5edbc5159f2af3d255cecbdeb
Signed-off-by: Jan <jgelety@cisco.com>
7 years agoAdd API call of sw_interface_set_mpls_enable to vpp_api_test 55/3555/3
John Lo [Tue, 25 Oct 2016 00:20:11 +0000 (20:20 -0400)]
Add API call of sw_interface_set_mpls_enable to vpp_api_test

Change-Id: If0e98c111b3dfa38cb2c619dde4ddb3e52ee8dfa
Signed-off-by: John Lo <loj@cisco.com>
7 years agoDisable colored output for tests, when not tty 63/3563/3
Peter Ginchev [Tue, 25 Oct 2016 10:22:15 +0000 (13:22 +0300)]
Disable colored output for tests, when not tty

Change-Id: I73f01bd3a8e7caa00c75b845b9e61d3cb0f34877
Signed-off-by: Peter Ginchev <pginchev@cisco.com>
7 years agoAdd generated python bindings to .gitignore 62/3562/1
Marek Gradzki [Tue, 25 Oct 2016 10:17:33 +0000 (12:17 +0200)]
Add generated python bindings to .gitignore

Change-Id: I05b5955afa9fee5dd213a98126982626eae4d9ca
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoFix LISP src/dst based policy 93/3493/5
Filip Tehlar [Mon, 17 Oct 2016 14:20:18 +0000 (16:20 +0200)]
Fix LISP src/dst based policy

Change-Id: Ibcc58ad50e33cd26367fd28f60334e29f45a094c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoFix VXLAN tunnel delete crash 44/3544/1
John Lo [Mon, 24 Oct 2016 16:13:27 +0000 (12:13 -0400)]
Fix VXLAN tunnel delete crash

Change-Id: I610648f28b7504798da9e377ea099629aa7a5150
Signed-off-by: John Lo <loj@cisco.com>
7 years agoFix jvpp coverity issues #2 36/3536/2
Marek Gradzki [Mon, 24 Oct 2016 06:06:52 +0000 (08:06 +0200)]
Fix jvpp coverity issues #2

- synchronize AbstractFutureJvppInvoker.getRequests
- handle registry & jvpp close in API usage examples

Change-Id: I918bf864b8212fde04f0d9194037f1c6a810fc3f
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agovppinfra: clib_memcpy optimization 31/3531/3
Damjan Marion [Fri, 21 Oct 2016 17:30:42 +0000 (19:30 +0200)]
vppinfra: clib_memcpy optimization

This patch allows copiler to select which SIMD instructions
will be used for copying 16 and 32 byte block.

Immediate effect of this change will occur in avx2 variants of
graph node functions. So far 128 byte registers were used
even in code optimized for avx2 due to macro nature of
clib_memcpy. With this patch gcc should pick 256 byte registers
in such cases.

Change-Id: I3510ee9b3bf01f3f0a9184e1a3f8e1bd827f8eee
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoDual Loop Lookup and Adj-midchain 34/3534/2
Neale Ranns [Sat, 22 Oct 2016 22:17:21 +0000 (15:17 -0700)]
Dual Loop Lookup and Adj-midchain

Change-Id: Id78b6dc637626c01b64bd5868d22425a30318348
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
7 years agoVPP-504: Permissions Error on Centos Vagrant VPP VM 04/3504/3
Billy McFall [Thu, 20 Oct 2016 12:50:11 +0000 (08:50 -0400)]
VPP-504: Permissions Error on Centos Vagrant VPP VM

Change-Id: I5e63538e0ba2395fb13f99f0c7c2ca3123a34e59
Signed-off-by: Billy McFall <bmcfall@redhat.com>
7 years agoFix Coverity Errors in FIB. This is mainly consolidating the vnet_link_t and fib_link... 87/3487/3
Neale Ranns [Wed, 19 Oct 2016 07:25:46 +0000 (08:25 +0100)]
Fix Coverity Errors in FIB. This is mainly consolidating the vnet_link_t and fib_link_t enums into just vnet_link_t.

Change-Id: Id2147afec1a28e95fec86dfd524088cd56563f63
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoQuad-loop ip4_lookup_inline, add _x4 validate buffer enqueue 77/3477/2
Dave Barach [Tue, 18 Oct 2016 19:25:35 +0000 (15:25 -0400)]
Quad-loop ip4_lookup_inline, add _x4 validate buffer enqueue

Change-Id: I80a25fa90d8a65db619b8697cede2b98bed37cea
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoPretty-print vl_api_api_get_first_msg_id_t msgs 30/3530/2
Dave Barach [Fri, 21 Oct 2016 16:58:51 +0000 (12:58 -0400)]
Pretty-print vl_api_api_get_first_msg_id_t msgs

Change-Id: I380bef59d64c8c647a437026085dfa20b27727e1
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoJava api generation for ioam trace plugin 87/3387/6
Shwetha [Thu, 13 Oct 2016 00:46:19 +0000 (01:46 +0100)]
Java api generation for ioam trace plugin

Makefile, configure, jvpp changes follow snat plugin jvpp
Fixes trace api handling for endianess

Change-Id: Id5c950ed3c85d5e0dc28ba31b580987baa1b133f
Signed-off-by: Shwetha <shwethab@cisco.com>
7 years agoCandidate fix for race condition in building jvpp_common and jvpp_registry 11/3511/2
Ed Warnicke [Thu, 20 Oct 2016 16:47:54 +0000 (16:47 +0000)]
Candidate fix for race condition in building jvpp_common and jvpp_registry

Change-Id: I244c4e02befc8c4d30915b219abe36ab03c4291d
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
7 years agovppinfra: add 256-bit vector typedefs 99/3499/1
Damjan Marion [Thu, 20 Oct 2016 09:08:03 +0000 (10:08 +0100)]
vppinfra: add 256-bit vector typedefs

Change-Id: Ic07c1c25f5ad99225209c73b5ff4deb9c52f3b1e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoimprove java build process 86/3486/2
Klement Sekera [Wed, 19 Oct 2016 10:31:25 +0000 (12:31 +0200)]
improve java build process

Change-Id: Ia4c7503ee31fca74fa45da4ff883f3b80b42e85e
Signed-off-by: Klement Sekera <ksekera@cisco.com>
7 years agoFix coverity issues in jvpp (newlines + CompletableDumpFuture.ctxId) 22/3422/2
Marek Gradzki [Fri, 14 Oct 2016 09:45:00 +0000 (11:45 +0200)]
Fix coverity issues in jvpp (newlines + CompletableDumpFuture.ctxId)

Change-Id: I2931982ac1ae64313a6ab781212793620af24585
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoDeprecate MPLSoGRE tunnels (VPP-502) 67/3467/6
Neale Ranns [Sun, 16 Oct 2016 19:01:42 +0000 (12:01 -0700)]
Deprecate MPLSoGRE tunnels (VPP-502)

Add shared memory APIs for MPLS routes and MPLS to IP prefix bindings.

Change-Id: I85b074a4dadc8249c410fdabd8ea019d20479cf8
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
7 years agoDO_NOT_MERGE: Update CSIT tests 161002 -> 161017 38/3438/4
pmikus [Mon, 17 Oct 2016 10:03:42 +0000 (11:03 +0100)]
DO_NOT_MERGE: Update CSIT tests 161002 -> 161017

- Update of CSIT operational branch with 16.04

Change-Id: I47346a5756e0944f29bee7760540912eb36081fa
Signed-off-by: pmikus <pmikus@cisco.com>
7 years agoFix test target build 17/3417/3
Peter Ginchev [Fri, 14 Oct 2016 07:23:37 +0000 (10:23 +0300)]
Fix test target build

Change-Id: Ib06b40292858f32df9c62e747808e0ef140bd9dd
Signed-off-by: Peter Ginchev <pginchev@cisco.com>
7 years agoUpdate tx and output node runtime when recycling interface 47/3447/3
Pierre Pfister [Mon, 17 Oct 2016 14:58:29 +0000 (15:58 +0100)]
Update tx and output node runtime when recycling interface

When an interface is removed, and another one is created,
the nodes from the previous interface are reused. The current
code fails when the new interface type differs from the original.
It is necessary to update the node runtime, in particular the
node function, and the node format function.

Jira: VPP-460

Change-Id: I2fc3c609e0173a7f62597230768669039853ab03
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoLoad-balancing in IP4 dual loop typos. (VPP-501) 69/3469/1
Neale Ranns [Tue, 18 Oct 2016 13:25:34 +0000 (14:25 +0100)]
Load-balancing in IP4 dual loop typos. (VPP-501)

Change-Id: I7b70d52d11c228ec5e790632a91b042b34b38d28
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoLoadBal: Use intrinsics and use protocol number 94/3394/3
Pierre Pfister [Thu, 13 Oct 2016 12:36:18 +0000 (13:36 +0100)]
LoadBal: Use intrinsics and use protocol number

This patch modifies the load balancer hash table such that
it uses vector operations.

It also fixes the hash computation logic such that the port
is only looked-up for TCP and UDP.
Some additional work is still needed for other types of traffic.

Change-Id: I788b4c782a9923d3792f3985f0580c0c81b3aad3
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoVPP-491: Update CLI Command documentation for "show ip fib" and "show ip6 fib". 54/3454/2
Billy McFall [Mon, 17 Oct 2016 15:35:32 +0000 (11:35 -0400)]
VPP-491: Update CLI Command documentation for "show ip fib" and "show ip6 fib".

Change-Id: I9d1d02ffbb3cdbe8c4a3f335ece40f3dcbd848a7
Signed-off-by: Billy McFall <bmcfall@redhat.com>
7 years agoSupport MPLSoGRE with the new FIB 2.0 31/3431/3
John Lo [Sat, 15 Oct 2016 21:45:35 +0000 (17:45 -0400)]
Support MPLSoGRE with the new FIB 2.0

Note that the new way to provision MPLSoGRE is using the "normal"
GRE tunnel such as in the following example:
  create gre tunnel src 10.0.3.1 dst 10.0.3.3
  set in state gre0 up
  set int ip addr gre0 10.0.4.1/30
  set int mpls gre0 enable
  ip route table 4 6.0.0.0/24 via 10.0.4.2 gre0 out-label 30
  mpls local-label add 30 eos ip4-lookup-in-table 4

The previous CLIs/APIs used to configure MPLSoGRE tunnel such as
"create mpls gre tunnel...", "mpls encap|decap add label .." and
"show mpls tunnel", etc. can not be used. They will be deprecated
in a later update to the VPP code base.

Change-Id: I244916841924dc2b87d2143691cd8476716c06b1
Signed-off-by: John Lo <loj@cisco.com>
7 years agooam: fix compilation with gcc6 41/3441/2
Damjan Marion [Mon, 17 Oct 2016 11:54:59 +0000 (13:54 +0200)]
oam: fix compilation with gcc6

gcc6 reports:

vpp/oam/oam.c:560:531: error: self-comparison always evaluates to true
[-Werror=tautological-compare]

Change-Id: I7a086099c14c6661d0c6b4cf0370631fc06bc23d
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agostyle: fix VLIB_NODE_FUNCTION_MULTIARCH indent 40/3440/2
Damjan Marion [Mon, 17 Oct 2016 10:51:18 +0000 (12:51 +0200)]
style: fix VLIB_NODE_FUNCTION_MULTIARCH indent

Change-Id: I9c23ddbbd576e8c900ba82425572ed7a3c4f56e3
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVPP-492: Fix ability to change mac address of the interface 19/3419/4
Pavel Kotucek [Fri, 14 Oct 2016 08:20:59 +0000 (10:20 +0200)]
VPP-492: Fix ability to change mac address of the interface

Fixed Coverity complaining about the clib_memcpy used in
/vnet/vnet/interface.c

Change-Id: I401f05aea1066d829abac1555021e1180b4a161e
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
7 years agoVPP-488: Fix build errors, which uncovered IPv6 load balance lookup bug. 27/3427/2
Billy McFall [Fri, 14 Oct 2016 13:51:49 +0000 (09:51 -0400)]
VPP-488: Fix build errors, which uncovered IPv6 load balance lookup bug.

Change-Id: Id17fcb9154c5337908f29b7ce3a282b6a4b72d64
Signed-off-by: Billy McFall <bmcfall@redhat.com>
7 years agoVPP-490: vpp crash in show ip6 neighbor 28/3428/1
Billy McFall [Fri, 14 Oct 2016 14:45:49 +0000 (10:45 -0400)]
VPP-490: vpp crash in show ip6 neighbor

Change-Id: I003f95db85ce5085045c607f0b1daaefa792c910
Signed-off-by: Billy McFall <bmcfall@redhat.com>
7 years agoVPP-489: CLI Command "test lookup" crashes with invalid fib-index. 24/3424/2
Billy McFall [Fri, 14 Oct 2016 11:37:33 +0000 (07:37 -0400)]
VPP-489: CLI Command "test lookup" crashes with invalid fib-index.

Change-Id: If4c47b91e949483675cf569cd474b6c85fecef05
Signed-off-by: Billy McFall <bmcfall@redhat.com>
7 years agoFIB2.0: Adjacency complete pull model (VPP-487) 99/3399/4
Neale Ranns [Sat, 8 Oct 2016 12:03:40 +0000 (13:03 +0100)]
FIB2.0: Adjacency complete pull model (VPP-487)

Change the adjacency completion model to pull not push.

A complete adjacency has a rewirte string, an incomplete one does not. the re-write string for a peer comes either from a discovery protocol (i.e. ARP/ND) or can be directly derived from the link type (i.e. GRE tunnels). Which method it is, is interface type specific.
For each packet type sent on a link to a peer there is a corresponding adjacency. For example, if there is a peer 10.0.0.1 on Eth0 and we need to send to it IPv4 and MPLS packets, there will be two adjacencies; one for the IPv4 and one for the MPLS packets. The adjacencies are thus distinguished by the packets the carry, this is known as the adjacency's 'link-type'. It is not an L3 packet type, since the adjacency can have a link type of Ethernet (for L2 over GRE).
The discovery protocols are not aware of all the link types required - only the FIB is. the FIB will create adjacencies as and when they are required, and it is thus then desirable to 'pull' from the discovery protocol the re-write required. The alternative (that we have now) is that the discovery protocol pushes (i.e. creates) adjacencies for each link type - this creates more adjacencies than we need.
To pull, FIB now requests from the interface-type to 'complete' the adjacency. The interface can then delegate to the discovery protocol (on ethernet links) or directly build the re-write (i.e on GRE).

Change-Id: I61451789ae03f26b1012d8d6524007b769b6c6ee
Signed-off-by: Neale Ranns <nranns@cisco.com>
7 years agoAdd macro for sending large data structures to API clients 08/3408/1
Florin Coras [Thu, 13 Oct 2016 14:19:40 +0000 (16:19 +0200)]
Add macro for sending large data structures to API clients

Change-Id: I1c4ec4dd02ce5a16e33aa0908a606496ad0d64cc
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoadd xxx_or_null(...) message buffer allocation variants 07/3407/1
Dave Barach [Thu, 13 Oct 2016 21:35:09 +0000 (17:35 -0400)]
add xxx_or_null(...) message buffer allocation variants

Useful when attempting to serialize potentially very large data
structures and send them to API clients. NULL pointer checks are
MANDATORY when calling xxx_or_null(...) variant functions.

Change-Id: I6ae272deb7150a2c5aa82ec45a206e5bddee7a02
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agofeature: rename vnet_ip_feature_* to vnet_feature_* 02/3402/2
Damjan Marion [Thu, 13 Oct 2016 12:10:10 +0000 (14:10 +0200)]
feature: rename vnet_ip_feature_* to vnet_feature_*

Change-Id: Idf68266f705b0455e5ab0ac73d23c7e0f4120d5b
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd clib_mem_alloc_or_null(...) 00/3400/1
Dave Barach [Thu, 13 Oct 2016 14:53:26 +0000 (10:53 -0400)]
Add clib_mem_alloc_or_null(...)

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