vpp.git
7 years agoFix deletion forwarding entries when deleting static remote mapping 88/1888/2
Filip Tehlar [Thu, 7 Jul 2016 07:58:08 +0000 (09:58 +0200)]
Fix deletion forwarding entries when deleting static remote mapping

Change-Id: I11207a0452cbccfb959ff426faefda4820463007
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoRetire support for DPDK 2.1.0 and older 83/1883/3
Damjan Marion [Wed, 6 Jul 2016 21:13:39 +0000 (23:13 +0200)]
Retire support for DPDK 2.1.0 and older

Change-Id: I3c3427c61e32d4727360aa802950bb9ab44afd84
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd some doxygen tags 79/1879/4
Dave Barach [Wed, 6 Jul 2016 14:29:27 +0000 (10:29 -0400)]
Add some doxygen tags

Also add an index of node names

Change-Id: Id65c2e607976d8bad73deb738035a471be077196
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoAdd an option to dump details about specific LISP EID in API/CLI 44/1844/3
Filip Tehlar [Mon, 4 Jul 2016 09:43:11 +0000 (11:43 +0200)]
Add an option to dump details about specific LISP EID in API/CLI

Change-Id: Ie5e6751fd791e7ca728522632332abe442a1a75b
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoRetire PLATFORM=virl 82/1882/2
Damjan Marion [Wed, 6 Jul 2016 20:52:49 +0000 (22:52 +0200)]
Retire PLATFORM=virl

Change-Id: Iaf9735258f456574534c1a581b983326badea171
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd support for capturing packets on packet generator interfaces 57/1857/5
Damjan Marion [Mon, 4 Jul 2016 19:04:40 +0000 (21:04 +0200)]
Add support for capturing packets on packet generator interfaces

This patch introduces following changes:
 - 4 predefined pg/stream[0-3] interfaces are removed
 - Interface naming is changed form pg/streamX to pgX where X can be
   any u32 value
 - one pgX interface can handle multiple streams
 - keyword "source pgX" is added to "packet-generator add" command, X is 0
   by default
 - new cli "packet-generator capture" is introduced
 - new cli "create packet-generator interface pgX"

Change-Id: I768d075b9d4a34f0b5073debdc5dd4a0880c682c
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoNetmap: Fix Netmap Polling Issue 61/1861/3
Mohsin KAZMI [Wed, 6 Jul 2016 01:17:50 +0000 (03:17 +0200)]
Netmap: Fix Netmap Polling Issue

Previously, netmap node switched from interrupt to polling if
worker threads are enabled even if there was no netmap interface
running. Netmap input node consumed CPU cycles because of input
node calls but these cycles were wasted as input node did not have
any packet to process.

This patch fixes issue stated above using more intelligent way of enabling
or disabling polling based on interfaces count. But the pre-requisite
condition for polling is, worker thread(s) should be enabled.

Change-Id: I3a901823c7b040cce3393958981f439b9f290fe5
Signed-off-by: Mohsin KAZMI <sykazmi@cisco.com>
7 years agoVPP-184 - Bad type translation in jvpp 64/1864/2
Jan Srnicek [Wed, 6 Jul 2016 11:19:12 +0000 (13:19 +0200)]
VPP-184 - Bad type translation in jvpp

Change-Id: I6dda9eb8d58a2bc9a1e4d6636688dfa1f8bb88c6
Signed-off-by: Jan Srnicek <jan.srnicek@pantheon.tech>
7 years agoBug fix for VPP-104 about not being able to down a sub-if if the super-if is up 51/1851/3
Calvin [Mon, 4 Jul 2016 18:14:46 +0000 (14:14 -0400)]
Bug fix for VPP-104 about not being able to down a sub-if if the super-if is up

Change-Id: I913c9807519aa10e515d12fcfbcbfc22b58f5839
Signed-off-by: Calvin <calvin.ference@gmail.com>
7 years agoVPP-182: IPv4 static ARP entries should not be deleted on interface down 59/1859/3
John Lo [Tue, 5 Jul 2016 22:34:40 +0000 (18:34 -0400)]
VPP-182: IPv4 static ARP entries should not be deleted on interface down

IPv4 static ARP entries should remain when interface is set admin-down
and be reapplied on interface admin-up.

Change-Id: Ic0051865154230c2561d6e6421b05d842f147ca7
Signed-off-by: John Lo <loj@cisco.com>
7 years agoVPP-177: IPsec empty buffers allocation fix 45/1845/3
Matus Fabian [Mon, 4 Jul 2016 12:36:52 +0000 (05:36 -0700)]
VPP-177: IPsec empty buffers allocation fix

Change-Id: I6d224fe19f1e0dd7ad5659e0734bc96ba37337ff
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agoVPP-144: Fix that shows the empty segment field in sh sr tunnel 53/1853/3
Calvin [Mon, 4 Jul 2016 20:30:50 +0000 (16:30 -0400)]
VPP-144: Fix that shows the empty segment field in sh sr tunnel

Change-Id: Idc71a48f2eab3b712f6953af8baf1a6ecd54dcaf
Signed-off-by: Calvin <calvin.ference@gmail.com>
7 years agoVPP-179 Fix adjacency reference-count botches 58/1858/1
Dave Barach [Tue, 5 Jul 2016 17:37:34 +0000 (13:37 -0400)]
VPP-179 Fix adjacency reference-count botches

Change-Id: I3fe83a511064d73087c4526ef33cd7628f15b90f
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoENIC driver patches to address various issues 54/1854/2
John Lo [Tue, 5 Jul 2016 03:23:32 +0000 (23:23 -0400)]
ENIC driver patches to address various issues

Also clear x-bit for old patch files 0013-xxx and 0014-xxx.

Change-Id: I217fdbfb32cef1ae575c668270d3baf593e688c6
Signed-off-by: John Lo <loj@cisco.com>
7 years agoLISP CP cleanup and refactoring 02/1802/13
Florin Coras [Thu, 23 Jun 2016 13:01:58 +0000 (15:01 +0200)]
LISP CP cleanup and refactoring

- avoid code duplication by using only one function for
  insertion/updating of remote mappings into map-cache. Static remote
  mappings are now inserted using this function as well and therefore
  the code does not try to build forwarding entries out of them now.
- bring up lisp dp interfaces when a vni is bound to a vrf.
- ensure eids are cleaned-up before parsing control plane messages
- ensure map-requests are always sent to default fib
- new API to insert lisp adjacencies as opposed to remote mappings which
  should be replaced post merged in CSIT
- reorganize and group functions according to their purpose and use. No
  need to pre-declare internal functions now.
- this does not touch locator-set logic

Change-Id: Ibcfc0f2d9c1bc1c9eab6e83c1af1b4cf9302ac10
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoVPP-174 IPsec API fix 40/1840/1
Matus Fabian [Mon, 4 Jul 2016 08:30:03 +0000 (01:30 -0700)]
VPP-174 IPsec API fix

ipsec_sad_add_del_entry and ipsec_spd_add_del_entry parameters with IPv4 address
are always 0.0.0.0

Change-Id: I75cb211ce9069596df4ef1d910e263d22940b9d8
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 years agoAdd gtags option to use ctags. Hidden option in Makefile 39/1839/1
Keith Burns (alagalah) [Sun, 3 Jul 2016 00:54:36 +0000 (17:54 -0700)]
Add gtags option to use ctags. Hidden option in Makefile

Change-Id: I6b01c1f2beec37d7aaad1ab9dab303835a9feb49
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoFinish cleanup of .../plugins/{configure.ac, Makefile.am} 38/1838/1
Dave Barach [Sat, 2 Jul 2016 14:34:55 +0000 (10:34 -0400)]
Finish cleanup of .../plugins/{configure.ac, Makefile.am}

To add a new plugin subdirectory, add this to Makefile.am:

if ENABLE_new_PLUGIN
SUBDIRS += new-plugin
endif

and add this to configure.ac:
PLUGIN(new)

Change-Id: I770a6f4f8f964fd7318a912be486accf46514b59
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoEnable PCI extended tags in the DPDK config 67/1767/2
Damjan Marion [Sun, 26 Jun 2016 18:12:40 +0000 (20:12 +0200)]
Enable PCI extended tags in the DPDK config

This change should improve DPDK performance on 40G+ NICs
with small packets.
It also removes ITR setting for i40e devices, allowing driver to set default.

Change-Id: I70761b155e48fb0281f7c231516d83027bd16ca2
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoSimple ip4 NAT plugin 66/1766/12
Dave Barach [Sun, 26 Jun 2016 14:42:08 +0000 (10:42 -0400)]
Simple ip4 NAT plugin

Change-Id: Iffe77bf2a05ced41474540ff54a842101aad7c41
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoVPP-171: fix a set of hw interface recycling bugs 36/1836/1
Dave Barach [Fri, 1 Jul 2016 16:38:11 +0000 (12:38 -0400)]
VPP-171: fix a set of hw interface recycling bugs

Change-Id: I735292bb2176742acab2295f90956c57e6f7ec1c
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoVPP-163 "show ip6 interface" ignores many addresses 62/1762/3
Chris Luke [Sat, 25 Jun 2016 00:38:06 +0000 (20:38 -0400)]
VPP-163 "show ip6 interface" ignores many addresses

The output of the CLI command "show ip6 interface" shows only the first
link-local address and any globally-scoped addresses. It ignores all
other valid address scopes.

This patch reworks that routine to cover the three main address scopes
("link-local", "global" and "local") and anything else it finds is
grouped under "other").

Rationale for this final grouping is that these other addresses fall under
ranges currently either "reserved" or "multicast" in scope. Whilst it's
good to show if these are present, they are not normally found as link
addresses.

DBGvpp# sh ip6 int tap-0
tap-0 is admin down
Link-local address(es):
fe80::e857:7fff:fe77:c1a9/64
Local unicast address(es):
fd50:7389:246b:4321::2/64
Joined group address(es):
ff02::1
ff02::2
ff02::16
ff02::1:ff77:c1a9
ff02::1:ff00:2
...

Change-Id: I1d750b3b39c54aa4eb75632d53089640601bcba5
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoFix buffer leak from L2 flooding replication process 24/1824/2
Pierre Pfister [Thu, 30 Jun 2016 13:06:55 +0000 (14:06 +0100)]
Fix buffer leak from L2 flooding replication process

vlib_buffer_free_inline actually checks (b->flags & VLIB_BUFFER_RECYCLE)
in order to decide whether to free the packet or not.
Although the flag was correctly set in replication_prep, it is not removed
by replication_recycle during last iteration.

This patch just removes VLIB_BUFFER_RECYCLE when is_last is set.

Change-Id: I2445ebce908d94d95535e706b40407b4f15906e4
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoFix wrong interger type when unformating value in VAT 21/1821/2
Filip Tehlar [Thu, 30 Jun 2016 07:46:08 +0000 (09:46 +0200)]
Fix wrong interger type when unformating value in VAT

Since format string "%d" expects a 32 bit value using u8 type in unformat()
results in buffer overflow.

Change-Id: Idee5b588049d7573ddbde56c28030f9db3758493
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoFix clang build 19/1819/1
Damjan Marion [Wed, 29 Jun 2016 23:02:17 +0000 (01:02 +0200)]
Fix clang build

Change-Id: I678d7e0a7c91c7daf9feb3ec23a633b96fab56a7
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix the spelling of the word "suppress". 95/1795/3
Chris Luke [Tue, 28 Jun 2016 23:54:21 +0000 (19:54 -0400)]
Fix the spelling of the word "suppress".

The spelling mistake where "suppress" is written as "surpress" was
sufficiently common and annoyed me enough to fix it.

For backwards compatibility, the CLI and API test tool both still accept
the erroneous spelling.

Change-Id: I82104ae9d8c2c9d6e3396ba0d72cb1dc133081d1
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoAdd support for ethernet address in LISP API 00/1800/3
Filip Tehlar [Mon, 27 Jun 2016 11:09:20 +0000 (13:09 +0200)]
Add support for ethernet address in LISP API

Change-Id: I9f1522f55bdd11602784a421fd850b839a1070e6
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoDon't re-write adjacency with same information. 09/1809/1
Keith Burns (alagalah) [Wed, 29 Jun 2016 14:07:16 +0000 (07:07 -0700)]
Don't re-write adjacency with same information.

This will cause FIB counters to appear to be reset.
This is an implementation of a patch from Dave Barach.

Change-Id: I19b9953d42dfb92ec22af6a855e2e519ae7c3bdc
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoDecouple worker thread code from dpdk, enable worker threads in vpp_lite 98/1798/3
Damjan Marion [Mon, 27 Jun 2016 06:30:30 +0000 (08:30 +0200)]
Decouple worker thread code from dpdk, enable worker threads in vpp_lite

Change-Id: I28616f1a89f2da95484438ec1a1db64845f15ef6
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVPP-158: VPP crashes in IKEv2 code when running multithreaded 91/1691/2
Matthew Smith [Tue, 21 Jun 2016 21:05:09 +0000 (16:05 -0500)]
VPP-158: VPP crashes in IKEv2 code when running multithreaded

Change tunnel interface creation to be done from the main thread instead
of a worker thread by calling vl_api_rpc_call_main_thread.

Make per-thread copies of volatile elements in ikev2_main.

Change-Id: I4cda8aaa392a04c2aea2d50a52a07933cf40c016
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
7 years agoVPP-48 Fixes for ip4/6 ttl checks and icmp responses 54/1654/6
Chris Luke [Tue, 14 Jun 2016 20:24:47 +0000 (16:24 -0400)]
VPP-48 Fixes for ip4/6 ttl checks and icmp responses

This patch fixes a few minor things:

- Previously ip[46]_input was rejecting packets with an input TTL (hop
  limit) of one; this was not correct behavior. Packets that are bound
  for this device can validly have a TTL of one.
- ip[46]_forward was not generating an ICMP TTL expired message if the
  act of decrementing the TTL caused it to become zero. This was not
  previously an issue because ip[46]_input was filtering packets where
  this could happen.
- udp_local was not generating ICMP Port Unreachable messages if
  UDP packets arrived for a port that is not listened to. This is
  typically the signal that "traceroute" uses to terminate its
  search.

Together these fixes mean that traceroute probes transiting a VPP
node, or are targetted toward a VPP node, now work as expected.

Change-Id: I84bb940883f7a18435f29f4518fb0445b989a3e3
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoFix native build on non x86_64 systems 94/1794/1
Damjan Marion [Tue, 28 Jun 2016 17:10:41 +0000 (19:10 +0200)]
Fix native build on non x86_64 systems

Change-Id: Iab9f6793112f19a5b54a555623d84099aa8bb03e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoReduce ring size for dpdk NICs and overtal mem footprint 68/1768/2
Damjan Marion [Sun, 26 Jun 2016 18:16:57 +0000 (20:16 +0200)]
Reduce ring size for dpdk NICs and overtal mem footprint

Size of interface descriptor rings have direct impact
on Last Level Cache utilization, and can significantly affect performance.
So generally having smaller ring size is good idea as long as
there is enough buffer in the ring to accomodate line rate.

Here we are reducing rings sizes to 1024 which is still bigger
than lab verified 512 buffers per ring.

Indirectly, this also affects memory footprint, as we can have
smaller buffer allocation, which is now 16384 (previously it was 32768)

This patch also fixes issue with i40e vector PMD which was leaking
buffers when previous default ring sizes were set.

Change-Id: I58fb40586304b2f0cb5de9a444055da3cd3acb53
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd support for classify table/session read to jvpp: 71/1771/2
Marek Gradzki [Mon, 27 Jun 2016 08:45:09 +0000 (10:45 +0200)]
Add support for classify table/session read to jvpp:

* provides length information for variable length arrays
  in classify table/sessione reply messages
* provides jvpp example for reading classify tables/sessions

Change-Id: I47f8fca5c849ec874d4e23f28177e310689db522
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoPlugins: Clean up the plugin directory so that each plugin has its own 64/1764/5
Ole Troan [Fri, 24 Jun 2016 18:10:30 +0000 (20:10 +0200)]
Plugins: Clean up the plugin directory so that each plugin has its own
directory and GNU autotools setup.

Change-Id: I6c59d1297389c9413db0c0b9bdf3b759080bf1b8
Signed-off-by: Ole Troan <ot@cisco.com>
7 years agoMore janitorial work 79/1779/2
Dave Barach [Mon, 27 Jun 2016 13:25:13 +0000 (09:25 -0400)]
More janitorial work

Install vpp api header files in /usr/include/vpp-api, instead of
/usr/include/api. Someone will eventually complain if we continue with
the status quo.

Generate /usr/bin/vpp_plugin_configure, to correctly configure
standalone plugin compilation against header files installed from the
dev package.

If a plugin's CFLAGS don't precisely match the installed vpp engine
binary, subtle misbehavior can and will occur. Example: the ip4/ip6
main_t structure size / member offsets depend on DPDK=[0|1]. Screw
that one up, and your brand-new configurable ip feature will
mysteriously fail to appear, even though the plugin loads perfectly.

Change-Id: I20c97fe1042808a79935863209d995c31953b98c
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoVPP-108 : API calls to read classify table and sessions 86/1486/10
Pavel Kotucek [Tue, 7 Jun 2016 12:44:26 +0000 (14:44 +0200)]
VPP-108 : API calls to read classify table and sessions

Added new API calls to read
- classify table ids as array
- classify table ids for specified interface
- classsify table info
and to dump sessions of specified classify table.

Change-Id: I089604fa98eea92866495089d76c2330ae7d850c
Signed-off-by: Pavel Kotucek <pavel.kotucek@pantheon.tech>
7 years agoAdd MAC address support to LISP map-cache 74/1774/1
Filip Tehlar [Fri, 24 Jun 2016 12:16:34 +0000 (14:16 +0200)]
Add MAC address support to LISP map-cache

Change-Id: I80f05a222cb0f728ad2460efe33955e781b6849f
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoMisc. janitorial work: 65/1765/1
Dave Barach [Sun, 26 Jun 2016 14:29:03 +0000 (10:29 -0400)]
Misc. janitorial work:

Remove private / name-colliding "give me the first ip address on an
interface" routine from proxy_node.c

Return a proper error from ip4_lookup_init / ip6_lookup_init.

Change-Id: Idd3c574424ba2ea77c263af16b02cd4ad0cb4605
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoNetmap: Resolve interface state issue 66/1666/2
Mohsin KAZMI [Mon, 20 Jun 2016 04:55:25 +0000 (06:55 +0200)]
Netmap: Resolve interface state issue

[VPP-155]: There is inconsistency in the netmap interface
state for software interface state and hardware interface
state. This patch resolves that issue.

Change-Id: I92199e117f919bd985670366a6d3b7753e40659c
Signed-off-by: Mohsin KAZMI <sykazmi@cisco.com>
7 years agoDoubly-linked list element pools 61/1761/2
Dave Barach [Fri, 24 Jun 2016 22:53:21 +0000 (18:53 -0400)]
Doubly-linked list element pools

Change-Id: I96e7602be48dfb5bb3867ad1e9f15c543903b3d6
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agovhost-dpdk: dequeue size fix 96/1696/2
Zhihong Wang [Wed, 22 Jun 2016 00:33:59 +0000 (20:33 -0400)]
vhost-dpdk: dequeue size fix

Burst size for DPDK is 32, which is different from VLIB_FRAME_SIZE.
A loop is needed to dequeue all packets.

Change-Id: Ie611c58c4e3434251a47fe6ad1f38abcb85180cb
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
7 years agoadd buf_physaddr to dpdk trace 60/1760/2
Georgii Tkachuk [Fri, 24 Jun 2016 01:52:42 +0000 (01:52 +0000)]
add buf_physaddr to dpdk trace

Change-Id: Icbb6814306f51873af6ad9d1425b52d660bb99ce
Signed-off-by: Georgii Tkachuk <georgii.tkachuk@intel.com>
7 years agoVagrantfile RAM default is too small. 63/1763/1
Keith Burns (alagalah) [Sat, 25 Jun 2016 10:50:28 +0000 (03:50 -0700)]
Vagrantfile RAM default is too small.

- Will raise JIRA for someone to convert this to use binaries by default
- This means we should be able to get away with smaller VM for non-dev users

Change-Id: If3d9283ba2c169792a1ab71ff692c25de82d41f4
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agonetmap: multithreading support 19/1619/3
Mohsin KAZMI [Thu, 16 Jun 2016 04:58:34 +0000 (06:58 +0200)]
netmap: multithreading support

This patch adds multithreading support for netmap interfaces.

Change-Id: Iba94386fe309a4aac71646fe567f8dabbebd0459
Signed-off-by: Mohsin KAZMI <sykazmi@cisco.com>
7 years agoMove vcgn as plugin 59/1759/2
Shesha Sreenivasamurthy [Fri, 24 Jun 2016 18:04:29 +0000 (11:04 -0700)]
Move vcgn as plugin

    Use appropriate libnames to copy

Change-Id: Iaa1e7e3ceed52f328e26e75ee7309fc6464d5c66
Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
7 years agoReformat output of lisp eid-table show command. 27/1727/3
Filip Tehlar [Wed, 22 Jun 2016 07:18:12 +0000 (09:18 +0200)]
Reformat output of lisp eid-table show command.

Example output:

DBGvpp# sh lisp eid
EID                                type                locators
[100] 6.0.2.0/24                   local(ls1)          host-intervpp1
[200] 6.0.2.0/24                   local(ls2)          host-intervpp1
[100] 6.0.4.0/24                   remote              6.0.3.2
[200] 6.0.99.0/24                  local(ls3)          local0
                                                       host-intervpp1
[0] 6.0.0.0/16                     remote

Change-Id: I69200bf7636167bce931def88828503a75496f4b
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoVPP-118: add support for variable length arrays to jvpp 17/1617/8
Marek Gradzki [Wed, 15 Jun 2016 14:38:33 +0000 (16:38 +0200)]
VPP-118: add support for variable length arrays to jvpp

* extends VPP's message definition language with the following syntax:

u32 count:
u8 array[count];

which is traslated to:

u32 count;
u8 array[0];

but now, python API representation generated by vppapigen
contains information about where the array length is stored.

* modifies existing response messages to use the new syntax

Change-Id: I68210bc7a3a755d03d067e9b79a567f40e2d31f3
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
7 years agoAdd admin-up flag to L2TP tunnels and start tunnels set to down 01/1701/3
Pierre Pfister [Wed, 22 Jun 2016 11:54:48 +0000 (12:54 +0100)]
Add admin-up flag to L2TP tunnels and start tunnels set to down

L2TP tunnels use virtual interfaces but directly send
packets to l2-input node (not ethernet-input).
This node requires a bridge-domain to be associated with
the interface.

Past code was immediatly turning the interface up, but
some packets could be sent to l2-input without bridge domain
between interface creation and association with a bridge domain.

The tunnel is now created as down and has to be set up later
(typically after being associated with a bridge-domain).

Another option would have been to change the api and enforce
a bridge-domain to be specified before the tunnel, but this
is less flexible for the user.

Change-Id: I26d1f36bb4f327d9fa1c8044023f2210c4117904
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoShow command support for ip feature paths 47/1747/2
Dave Barach [Thu, 23 Jun 2016 15:27:51 +0000 (11:27 -0400)]
Show command support for ip feature paths

"show ip features" displays all available features, in execution
order.

"show ip interface features <intfc>" displays all features currently
configures on an interface, in execution order.

Change-Id: I489bbdb85799a01721ba60b12ffaffcab1e0d1df
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoUse lisp_gpeX iface counters to store decap stats 93/1693/5
Florin Coras [Tue, 21 Jun 2016 20:32:47 +0000 (22:32 +0200)]
Use lisp_gpeX iface counters to store decap stats

The patch switches to using LISP interface counters for storing the
number of decapsulated packets instead of using per decap node stats. It
also removes the encap node (iface tx node) stats since the iface output
node already keeps track of the number of encapsulated packets.

Change-Id: I636702a824264c173792f2f0c7fec0b0f4c6a9f7
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoVPP-72 Added api call aquivalents to: 48/1448/4
marek zavodsky [Tue, 21 Jun 2016 03:35:16 +0000 (05:35 +0200)]
VPP-72 Added api call aquivalents to:
    "show mpls fib" -> "mpls_fib_encap_dump" and "mpls_fib_decap_dump"
    "show mpls tunnel" -> "mpls_eth_tunnel_dump [tunnel-index <tunnel-id>]" and
                          "mpls_gre_tunnel_dump [tunnel-index <tunnel-id>]"

Change-Id: I59699039392f06dc61f62a015d07186a91cfaf45
Signed-off-by: marek zavodsky <mazavods@gmail.com>
7 years agoLISP EID virtualization support 35/1535/6
Filip Tehlar [Thu, 2 Jun 2016 14:07:38 +0000 (16:07 +0200)]
LISP EID virtualization support

Change-Id: I892c001cfdff9d8d93e646641d96520beb3c6265
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoMore LISP SD FIB and forwarding fixes 87/1687/3
Florin Coras [Tue, 21 Jun 2016 01:19:29 +0000 (18:19 -0700)]
More LISP SD FIB and forwarding fixes

o) Avoid using explicit_fib_index in the dst (main) FIBs. It's used in
the IP6 lookup
o) use if_address_index instead of rewrite_header.node_index to store
tunnel indexes. This ensures the tunnel index is used in the signature
computation and thus avoids all complications/hacks needed to make src
adjacencies unique.
o) Fixed negative fwd entry route insertion

Change-Id: Ie56356f165b96dfa929da5672a3a429996366460
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoARP/NDP does not send solicitation when no source address is available 02/1702/4
Pierre Pfister [Wed, 22 Jun 2016 11:58:30 +0000 (12:58 +0100)]
ARP/NDP does not send solicitation when no source address is available

Currently, when the interface has no address assigned to it,
VPP crashes as ip_interface_address_for_packet assumes there
always is at least one address.

This patch checks if an address is available at all.
The only part of VPP using it is ARP or NDP.
When a neighbor discovery message has to be sent while
there is no address assigned on the interace, no
solicitation is sent and an error counter is incremented.

Change-Id: Ia9fdaf8e84050a1ceeb47f5370819d3df95714f0
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoAdd MAC address support for LISP 14/1714/3
Filip Tehlar [Wed, 22 Jun 2016 14:00:52 +0000 (16:00 +0200)]
Add MAC address support for LISP

Change-Id: I79e3915fa61b497e6b586babcdf093937af07b2b
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
7 years agoCLI to update locator-set 97/1697/3
Andrej Kozemcak [Mon, 20 Jun 2016 08:08:20 +0000 (10:08 +0200)]
CLI to update locator-set

Change-Id: I60ea36362a2c4b7c936dde501a3d737b68a8c9ff
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
7 years agoFix for build failure due to iOAM plugin header file path 77/1677/4
Shwetha [Tue, 21 Jun 2016 04:02:32 +0000 (05:02 +0100)]
Fix for build failure due to iOAM plugin header file path

Change-Id: Ie5d270a01e3ca0687a407aeebc42aacc53a01ddc
Signed-off-by: Shwetha <shwethab@cisco.com>
7 years agoVagrantfile syntax error correction - requires string input instead of integer. 89/1689/1
Srivatsa Sangli [Tue, 21 Jun 2016 19:58:19 +0000 (12:58 -0700)]
Vagrantfile syntax error correction - requires string input instead of integer.

Change-Id: Ib291662c4ea2f5bef0f2c417b16d256f5c480d5c
Signed-off-by: Srivatsa Sangli<srivrama@cisco.com>
7 years agoCheck if LISP is enable 27/1427/5
Andrej Kozemcak [Tue, 7 Jun 2016 10:25:20 +0000 (12:25 +0200)]
Check if LISP is enable

Lisp enable flag is enforced. DP API should not be call if the dp is disable.

Change-Id: I265cf3ea0460987f3fd5fd84b43127dd3b1c43c3
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
7 years agoFix problem with DPDK vector PMDs not working in VPP 73/1673/1
Damjan Marion [Tue, 21 Jun 2016 00:56:46 +0000 (20:56 -0400)]
Fix problem with DPDK vector PMDs not working in VPP

Linker was picking wrong, weakly linked function from
dpdk drivers, so detection of vector mode was always failing.

Change-Id: I11725c8ddbc4604dd04ecb89ebb7f02ee05e52c7
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoVPP-143: Correctly drop local l2tp packets when no session is found 68/1668/2
Pierre Pfister [Mon, 20 Jun 2016 13:52:22 +0000 (14:52 +0100)]
VPP-143: Correctly drop local l2tp packets when no session is found

When receiving a local ipv6 packet containing an l2tp packet not associated
with any session, l2tp node was handling the packet as if provided by an ipv6 feature,
hence crashing.

This patch fixes the issue by correctly dropping the packet instead.

This patch also fixes a typo from commit d65346098daf896.

Change-Id: I1b377fc5685568c16831920227671feffac64287
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoUsing env.sh file for Vagrantfile inputs, but assume some defaults 59/1659/3
Keith Burns (alagalah) [Sun, 19 Jun 2016 14:58:51 +0000 (07:58 -0700)]
Using env.sh file for Vagrantfile inputs, but assume some defaults

Change-Id: Ia4b45d88be5943d413d61435ff38796d1b6a32a2
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoVPP-152: mheap_alloc returns 0 when the requested heap size is too small 21/1621/2
Pierre Pfister [Fri, 17 Jun 2016 12:30:02 +0000 (13:30 +0100)]
VPP-152: mheap_alloc returns 0 when the requested heap size is too small

mheap_alloc allocates memory_size bytes of memory and returns
a page-aligned memory space prefixed with a word-aligned
header of type mheap_t.

This header includes the actual usable space size, but
when the requested size is too small, the computed size
was incorrect (infinite).

mheap_alloc now returns 0 in such cases.

With help from Yoann Desmouceaux.

Change-Id: I00af63d573d6939aca53dbe7ff612b726bd8f0df
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoOutput interface MTU check ignored in double-loop 51/1551/3
Chris Luke [Tue, 14 Jun 2016 20:26:22 +0000 (16:26 -0400)]
Output interface MTU check ignored in double-loop

In the double loop of ip4-rewrite, when forwarding packets,
the outbound interface MTU check occurs too late in the
double-loop to be actioned.

Change-Id: Ifc44e65d6ddb832aa0161d0685b1a28378541905
Signed-off-by: Chris Luke <chrisy@flirble.org>
7 years agoFix use of lookup_next_index in LISP src/dst FIB 39/1639/2
Florin Coras [Fri, 17 Jun 2016 11:59:10 +0000 (13:59 +0200)]
Fix use of lookup_next_index in LISP src/dst FIB

Adjacencies in LISP src/dst FIB store the index of the LISP output
interface (next node after lookup) in the lookup_next_index. Since the
values of interface node indexes are not constrained, they can collide
with the 'special' adjacencies IP_LOOKUP_NEXT_LOCAL and
IP_LOOKUP_NEXT_DROP. As a result, at allocation time, LISP ajacencies
may be automatically shared with the previous two, predefined
adjacencies and all LISP specific state stored in the rewrite area is
lost.

This fixes the problem by 'hijacking' the explicit_fib_index instead
of the lookup_next_index field.

Change-Id: I3c59121dcf0851decf5c08004143d1201dbd1ece
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoImproving cross_ldflags arguments for dpaa2 platform 57/1657/2
Sachin [Sat, 18 Jun 2016 10:26:35 +0000 (15:56 +0530)]
Improving cross_ldflags arguments for dpaa2 platform

 - This helps in avoiding manual export of
   LD_LIBRARY_PATH for /usr/lib64/

Change-Id: I15fc9c9f961848411b093c891ca9517ef4e074a0
Signed-off-by: Sachin <sachin.saxena@nxp.com>
7 years agogitignore gtags 58/1658/2
Keith Burns (alagalah) [Sat, 18 Jun 2016 19:21:41 +0000 (12:21 -0700)]
gitignore gtags

Change-Id: I0160cdfc8e749f875a232e07526d53a3a7c8395c
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoEnhanced RPM build process to make rpm for any given platform 56/1656/1
Sachin [Sat, 18 Jun 2016 09:58:08 +0000 (15:28 +0530)]
Enhanced RPM build process to make rpm for any given platform

 - Currently default rpm.spec only look for  "install-vpp-native"

Change-Id: Iaa78c46ae62d2747bda6ffc1189cb8ac6d578bd8
Signed-off-by: Sachin <sachin.saxena@nxp.com>
7 years agoFix node registration in ixge driver 23/1623/2
Damjan Marion [Fri, 17 Jun 2016 14:42:02 +0000 (16:42 +0200)]
Fix node registration in ixge driver

Change-Id: Ia98ed873954feaa7bf1f13d8eb4054d0afba495e
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoGive correct argument to ip_call_add_del_adjacency_callbacks 25/1625/2
Pierre Pfister [Fri, 17 Jun 2016 14:52:44 +0000 (15:52 +0100)]
Give correct argument to ip_call_add_del_adjacency_callbacks

ip_call_add_del_adjacency_callbacks requires an adjacency index, not a
sw_if_index.

Change-Id: I4ae6a6bbbe0abee4791217463d353c56f9735ba3
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
7 years agoMove pkt replication counter to the opaque2 cache line 40/1640/2
Dave Barach [Fri, 17 Jun 2016 18:09:56 +0000 (14:09 -0400)]
Move pkt replication counter to the opaque2 cache line

Change-Id: I5e6edfd03ab41949be2c768dfe68aa824bbc1f38
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoUpdated Makefile so install-dep doesn't prompt 46/1646/2
Keith Burns (alagalah) [Fri, 17 Jun 2016 19:54:17 +0000 (12:54 -0700)]
Updated Makefile so install-dep doesn't prompt

Change-Id: I8e5f4d120c9add636054e740f2a8aa3a0f8bb7d1
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoDynamically compute ip feature subgraph order 53/1553/6
Dave Barach [Tue, 14 Jun 2016 22:38:02 +0000 (18:38 -0400)]
Dynamically compute ip feature subgraph order

This change-set enables plugins to add themselves to the ip4/ip6
feature subgraphs without having to modify core vpp engine code
at all. Add VNET_IP4/IP6_UNICAST/MULTICAST_FEATURE_INIT macros
which express the required ordering constraints, and off you go.

Along the way, added an implementation of Warshall's algorithm to
vppinfra; to compute the positive transitive closure of a relation. In
this case, the relation is "feature A runs before feature B."

With that in hand, ip_feature_init_cast(...) computes a partial order
across the set of configured feature subgraph nodes.

In unit-testing, we discovered VPP-145 - ip4/6 inacl wiped out
vnet_buffer(b)->ip>current_config_index, which exists in main. So, we
fixed that by moving b->trace_index, adding b->current_config_index,
and removing the ip opaque union current_config_index.

Change-Id: Iff132116f66413dc6b31ac3377198c7a32d51f48
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoSupport NAT across multiple interface pairs 81/1581/2
Shesha Sreenivasamurthy [Wed, 15 Jun 2016 18:48:13 +0000 (11:48 -0700)]
Support NAT across multiple interface pairs

    Some of the commands require interface name as an
    additional parameter as we support multiple interfaces.
    Example:
    set vcgn map inside TenGigabitEthernete/0/0 10.1.0.1 - 10.1.0.1
    show vcgn inside-translation protocol tcp interface TenGigabitEthernete/0/0 inside-addr 1.0.0.2
    show vcgn outside-translation protocol tcp interface TenGigabitEthernet9/0/0 outside-addr 10.1.0.1

Change-Id: Id691ccd3f2c863c665a1568982c819b79dda007e
Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
7 years agoNXP DPAA2 Poll Mode Driver Support in DPDK 15/1615/2
Sachin [Fri, 17 Jun 2016 08:48:19 +0000 (14:18 +0530)]
NXP DPAA2 Poll Mode Driver Support in DPDK

 Upstreaming of DPAA2 driver changes is in progress.This patch will
 temporary add the support in VPP in built DPDK.

 Two types of changes:
     1. Driver specfic independent files. No impact on any other functionality.
     2. Changes in common EAL framework. These changes are done in compile time DPAA2
        specific flag, so no impact is expected on other existing features if not
compiling for DPAA2.

Change-Id: I02abe7189313835b51ff654b4d7e566bc0fb8327
Signed-off-by: Sachin <sachin.saxena@nxp.com>
7 years agoVPP-76:APIs for Proof of transit feature added to iOAM 73/1573/5
Shwetha [Wed, 15 Jun 2016 15:34:16 +0000 (16:34 +0100)]
VPP-76:APIs for Proof of transit feature added to iOAM
Moved Proof of Transit utility as a plugin
Moved Proof of Transit option as a plugin

Change-Id: Idc9897205eb8ec80c5dea47b428e6209ac938c32
Signed-off-by: Shwetha <shwethab@cisco.com>
7 years agoNew LISP API map-request itr-rloc 70/1570/6
Andrej Kozemcak [Tue, 14 Jun 2016 11:55:57 +0000 (13:55 +0200)]
New LISP API map-request itr-rloc

API to constrain source locator when sending map-requests.
lisp map-request itr-rloc <locator-set name>

Change-Id: I19f3a1aa8a387ca8662ccf3a4ad774ea7d655f80
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
7 years agoVNET: Initialization support for NXP DPAA2 poll mode driver 12/1612/2
Sachin [Fri, 17 Jun 2016 03:54:20 +0000 (09:24 +0530)]
VNET: Initialization support for NXP DPAA2 poll mode driver

 - NXP proposed a poll mode driver "rte_dpaa2_dpni" in DPDK upstream.
 - When using external DPDK with the given dpaa2 driver, VPP needs modification
   to initialize the PMD and to understand the DPAA2 N/W interfaces.

Change-Id: I00eb127fa88c71fb430d3def238d50ba68fd595f
Signed-off-by: Sachin <sachin.saxena@nxp.com>
7 years agovpp-83: fix double-unlock 11/1611/2
Dave Barach [Fri, 17 Jun 2016 00:14:43 +0000 (20:14 -0400)]
vpp-83: fix double-unlock

Change-Id: I0b75b4f9bef62aba69e9cc163924f6b985a35455
Signed-off-by: Dave Barach <dave@barachs.net>
7 years agoFix generate-deb-changelog to handle YY.MM release 03/1603/2
Ed Warnicke [Thu, 16 Jun 2016 04:17:07 +0000 (23:17 -0500)]
Fix generate-deb-changelog to handle YY.MM release

generate-deb-changelog was only properly handling x.y.z
releases.  This patch fixes it to handle YY.MM.

Change-Id: Iaaee8ff747abd6754d021535c889f67ad2c9998f
Signed-off-by: Ed Warnicke <eaw@cisco.com>
(cherry picked from commit 693f4358deef7db06b3d3cae0d881924dd9cf9fa)

7 years agoConsolidate use of IP fib functions in LISP CP 05/1605/2
Florin Coras [Thu, 16 Jun 2016 19:08:56 +0000 (21:08 +0200)]
Consolidate use of IP fib functions in LISP CP

Clean up, refactor and consolidate LISP CP functions that interact with
ip interfaces and fibs.

Change-Id: I214eaebbec8d43646118df0948d0f82f923a5b43
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years ago6rd: Move to plugin 04/1604/3
Ole Troan [Wed, 15 Jun 2016 12:29:08 +0000 (14:29 +0200)]
6rd: Move to plugin

- Change toplevel plugins make target. Now builds all plugins under
  plugins/. (Apart from sample-plugin).
- Move sixrd code to plugins directory and make necessary changes to
  make it a plugin
- Remove 6rd hooks from IP lookup code

Change-Id: I447e92e3bee240cd8de01d0abac2e1708e8c27d1
Signed-off-by: Ole Troan <ot@cisco.com>
7 years agoVPP-19: Split the lookup.h IP_LOOKUP_NEXT enum. 50/1550/3
Ole Troan [Tue, 14 Jun 2016 19:12:32 +0000 (21:12 +0200)]
VPP-19: Split the lookup.h IP_LOOKUP_NEXT enum.

IP4 and IP6 nodes currently shares the adj->lookup_next_index. That
has some issues, e.g. that one has to add non-functional nodes like
ip4-hop-by-hop and that anyone dynamically adding nodes to any of the
IP4/IP6 lookup nodes must ensure they add themselves to all relevant
nodes to ensure next index consistency.

This patch splits the IP_LOOKUP_NEXT into separate enums for IP4 and
IP6 with a common part for next-nodes used by both. It sets up other
IP nodes as siblings to avoid inconsistencies. This allows IP4 and IP6
lookup next nodes to evolve independently. The adj->lookup_next_index is
still shared, assuming that an IP4 adjacency isn't used by an
IP6 graph node.

Change-Id: I589b8364fe54e7a10c059b7ef9d6707eb0a345cc
Signed-off-by: Ole Troan <ot@cisco.com>
7 years agoFix hugepage leak on VM termination 90/1590/2
Shesha Sreenivasamurthy [Wed, 15 Jun 2016 20:47:40 +0000 (13:47 -0700)]
Fix hugepage leak on VM termination

    When VM is terminated, the hugepages mapped
    should be unmapped so that the system does not
    run out of hugepage resources. Therefore, mapped
    pages are unmapped when VPP notices a disconnect.

Change-Id: I7398fb20028036738ab87db0b0e79609e95d69a4
Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
7 years agoFix vxlan-gpe interface state dump failure 93/1593/1
Hongjun Ni [Thu, 16 Jun 2016 12:18:15 +0000 (20:18 +0800)]
Fix vxlan-gpe interface state dump failure

Correspond to HONEYCOMB-84 VxLAN GPE - Wrong operational data.

Change-Id: Ia1b3c3b85e4b5435b0c690a4ce9ff93c65bfee5c
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
7 years agoREADME file for vcgn 69/1569/2
Ranganathan T.S [Wed, 15 Jun 2016 14:37:41 +0000 (20:07 +0530)]
README file for vcgn

Change-Id: I6bd851e4b26f0b8d6f5826a19bded3af930cbc0e
Signed-off-by: Ranganathan T.S <rangan@cisco.com>
7 years agoDelete useless field decap_next in tunnel 55/1555/2
Hongjun Ni [Wed, 15 Jun 2016 14:49:23 +0000 (22:49 +0800)]
Delete useless field decap_next in tunnel

Field decap_next in vxlan-gpe tunnel is not needed.

Change-Id: I83cc42ca82274587a57e3c65711cf18ee8d692d3
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
7 years agoFix LISP locator pair selection 54/1554/4
Florin Coras [Mon, 13 Jun 2016 16:37:15 +0000 (18:37 +0200)]
Fix LISP locator pair selection

Make sure when selecting the local and remote locator pair for a
data-plane tunnel that the local locator has a route, in the FIB,
to the remote one.

Change-Id: Idbc8a28a8ede786c11ef98cb18eba4a78c4a228e
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoFix remote mapping CLI for unset v6 local eid 71/1571/2
Florin Coras [Wed, 15 Jun 2016 15:13:28 +0000 (17:13 +0200)]
Fix remote mapping CLI for unset v6 local eid

If when configuring a remote v6 mapping the local eid is not set,
configuration fails because the code expects local (default v4) and
remote eids to have the same AFI.

Change-Id: If791d2e8a104ea36603576f8b2797cc07bc2654b
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 years agoVPP-137: VPP sends ARP with wrong requested IP 47/1547/2
Neale [Tue, 14 Jun 2016 17:44:02 +0000 (18:44 +0100)]
VPP-137: VPP sends ARP with wrong requested IP

Change-Id: I01802f3dab04c940e65236ba6e680f1e504a0a5f
Signed-off-by: Neale <nranns@cisco.com>
7 years agoAdd dpdk per-interface startup config parameter to support rss-flag 52/1552/2
Srivatsa Sangli [Tue, 14 Jun 2016 20:10:55 +0000 (13:10 -0700)]
Add dpdk per-interface startup config parameter to support rss-flag

New parameter allows specifying rss-flag - one or more of following
ipv4-frag ipv4-tcp ipv4-udp ipv4-sctp ipv4-other ipv4
ipv6-tcp-ex ipv6-udp-ex ipv6-frag ipv6-tcp ipv6-udp
ipv6-sctp ipv6-other l2-payload ipv6-ex ipv6

Sample config:

dpdk {
    dev 0000:86:00.0 {
        rss {
            ipv4
            ipv4-tcp
            ipv4-udp
        }
    }
}

Change-Id: I33c047d69ef8710b8ba3c7e1a1964d5d54f6e880
Signed-off-by: Srivatsa Sangli <srivrama@cisco.com>
7 years agoAdd dpdk per-interface startup config parameter to specify worker threads 33/1533/3
Damjan Marion [Mon, 13 Jun 2016 22:36:09 +0000 (00:36 +0200)]
Add dpdk per-interface startup config parameter to specify worker threads

New parameter allows specifying which worker threads will process rx
queues. Parameter arguments is list of cores and number of worker specified
must be equal to the number of rx queues configured (num-rx-queues). If
num-rx-queues is not specified, it will be automatically set to
number of workers.

Sample config:

dpdk {
  dev 0000:86:00.0 {
    workers 2,3
    num-rx-queues 2
  }
}

Change-Id: I88bc381e0e542eb02def09a726c6f04de3e1ae17
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoReset new indirect adjacdncy template before using it 45/1545/2
Damjan Marion [Tue, 14 Jun 2016 16:11:52 +0000 (18:11 +0200)]
Reset new indirect adjacdncy template before using it

Change-Id: Ia69ba39364d4dfa1403c8fbb77b7990226bbcb85
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix node siblings 91/1491/4
Ole Troan [Fri, 10 Jun 2016 11:22:36 +0000 (13:22 +0200)]
Fix node siblings

Siblings did not work at all. Fixed by generating sibling relationships
earlier in vlib_node_main_init(). Also adding a node dynamically before
nodes were initialised failed for sibling nodes.

Change-Id: I2fb73eb33a6f5ee216f566074e18ed495e20634d
Signed-off-by: Ole Troan <ot@cisco.com>
7 years agogitignore change due to DPDK download suffix change 44/1544/2
Keith Burns (alagalah) [Tue, 14 Jun 2016 16:10:53 +0000 (09:10 -0700)]
gitignore change due to DPDK download suffix change

Change-Id: Idc86d3435e742f3cb96cb9eb1d85b0fdc6a40fc5
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
7 years agoRetire io threads and main-thread-io mode 31/1531/2
Damjan Marion [Mon, 13 Jun 2016 20:49:44 +0000 (22:49 +0200)]
Retire io threads and main-thread-io mode

Change-Id: I64f5ec5e32f200834c63ec3b304f9f20cef332a7
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoFix double-enqueued packet in interface-output dual-loop, fixes VPP-116 02/1502/2
Damjan Marion [Fri, 10 Jun 2016 17:26:54 +0000 (19:26 +0200)]
Fix double-enqueued packet in interface-output dual-loop, fixes VPP-116

When speculative enqueue fails and a buffer needs to be moved to a new
node queue the original buffer is not correctly removed from the
original queue so buffer get send for transmit and encryption at the
same time. This issue will only be hit with the double loop so low
throughput traffic like pings will not hit the issue. This code path is
also only hit when the feature flag is enabled so will not be hit by
normal traffic

Patch also reorgnizes code to reduce number of branches in the interface
output node loop.

Change-Id: I3653400e58bdfd833e6c42823bab51586128b54b
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoCleanup /dev/shm before starting VPP from top-level Makefile 30/1530/2
Damjan Marion [Mon, 13 Jun 2016 19:06:20 +0000 (21:06 +0200)]
Cleanup /dev/shm before starting VPP from top-level Makefile

Change-Id: I3a8b85ad033707552b9df7d0d08548517a8571ce
Signed-off-by: Damjan Marion <damarion@cisco.com>
7 years agoAdd sw_if_index to af_packet_create and various clean ups 34/1534/3
Keith Burns (alagalah) [Mon, 13 Jun 2016 23:56:04 +0000 (16:56 -0700)]
Add sw_if_index to af_packet_create and various clean ups

Change-Id: I4c2972b55d5d99f3aa7a05885791eef47351c734
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>