aboutsummaryrefslogtreecommitdiffstats
path: root/vnet
AgeCommit message (Collapse)AuthorFilesLines
2016-11-11feature: convert all feature nodes to new feature infraDamjan Marion31-1420/+429
Change-Id: I34c527ba910fb282a95458b78d1d684eb337905e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10ip_frag: fix implicit enum conversionDamjan Marion1-1/+1
Change-Id: I024b8d79cced45cf53a7a912319eca2cc932b10e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10feature: fix init issue when multiple arc are presentDamjan Marion2-10/+18
Change-Id: I9c76b6d7ffebeeb92d5eeca5852c487d73151f28 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10VXLAN tunnel encap forwarding optimization with FIB 2.0John Lo7-370/+490
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>
2016-11-09Fix Compile errors from clang in FIB2.0 codeNeale Ranns15-21/+19
Change-Id: Ief769c966888094944b7a6b7f26527e7eff6103f Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-09Fix DHCP proxy when used for non-default FIB tablesIgor Mikhailov (imichail)1-3/+3
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>
2016-11-09Fix a batch of coverity warnings, VPP-486Dave Barach3-2/+16
Change-Id: I0379844824b4c2eb42588d0fb8e1a7eb441e923f Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-09devices: create dummy device-input node to keep nexts in syncDamjan Marion11-29/+31
device-input feature arc requires that all input-nodes have nexts in sync. packet-generator tends to call vlib_node_add_next when new stream is created and that puts nexts out of sync. With this change all input node are siblings of device-input node so call to vlib_node_add_next(...) will install same next to the whole family. Change-Id: I33d79492e5f30f348af19e527f36fe0222c524d7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-09fix errors reported by clangDamjan Marion2-1/+2
Change-Id: Ib821e52dac7cd7ee24e6e495916689e23e8b699a Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-08pg: maintain per-worker bitmap of enabled streamsDamjan Marion3-10/+13
Change-Id: I38e476c8080faa5a8647ce6be5a71090e0aa8d5b Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-08Add the tap driver to the driver feature arc schemeDave Barach2-24/+16
Change-Id: I5f5251ed6b2a39d5e83dd7c702079245ef5f32b0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-08vhost: Improve packet tracingPierre Pfister2-64/+133
Packet tracing for packets sent or received on vhost interfaces now includes: - virtio header information - virtio queue transmit mode (chained, indirect, etc...) Should be *really* helpful for dealing with the many existing qemu/driver versions/implementations. Change-Id: Id0a5d1d671d8b9d3e05691fe13def991b30ee105 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-11-08pg: support for packet generator on different worker threadsDamjan Marion12-38/+75
New Debug CLI: packet-generator new { worker X } Change-Id: I71499733a29b49cd36d753d54846d2553af6d024 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-07Restore punt/inject after FIB2.0Igor Mikhailov (imichail)1-0/+12
The tuntap punt/inject should be enabled for IPv4/6 RX once any vpp interface has an IP address. Change-Id: I4a507b7540b7464ed6d21035ac9b8f9463028c6f Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-11-07Fix dual-loop issue in vxlan_gpe decapHongjun Ni1-18/+24
From logical point, if first packet is ipv4, and second packet is ipv6. When first packet failed, the procedure will skip key6_1 setting. This will lead to second packet's failure. But here the graph node only process either ipv4 or ipv6 packets completely. So it is not an issue here. This patch only make the packet processig's logic clear. It is just a cosmetic change. Change-Id: I0104ebf2546208d9068000649ce6dccdeeb5aa79 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-11-07pg: add device-input feature arc support on pg interfacesDamjan Marion2-5/+38
Change-Id: Ice97940a27c9f4d983d9199d59719d953520fcdb Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-07use STATIC_ASSERT macro instead of calling _Static_assert directlyDamjan Marion8-22/+22
Change-Id: Iccae655334b6219d22c325108b0e7f37d1dd68cf Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-07fix isssues discovered by coverity scanDamjan Marion2-3/+4
Change-Id: I62deaaa47a9259c886efa702eb4279c1c481585f Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-04feature: store arc index in vlib_bufferDamjan Marion8-63/+110
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>
2016-11-04DHCPv6: relay reply fixes (VPP-510)Wojciech Dec2-14/+36
Fixes DHCPv6 relay reply message corruption. Change-Id: Iead995f29d2fa9cbb04f0f9d42b3aa9002267117 Signed-off-by: Wojciech Dec <wdec@cisco.com>
2016-11-04vhost-user: multiqueue supportPierre Pfister2-199/+651
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>
2016-11-03vlib: add vlib_buffer_copy functionDamjan Marion6-152/+1
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>
2016-11-03Crash when adding duplicate pathsNeale Ranns2-8/+66
Change-Id: Icd29c9013ae70f5444eb940aff4f08589e755f48 Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-03Timestamp now a 64-bit integer: ns since 1/1/1970Dave Barach1-0/+6
Properly initialize allocated buffers Change-Id: Ib2005e605c89a164a4856790db6968fcd7520f5c Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-03Adding Sequence Number - Per Packet Counter(PPC) support for iOAM6.AkshayaNadahalli5-69/+330
- 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>
2016-11-02feature: recover "show ip features" commandDamjan Marion1-0/+204
Removed by accident. Change-Id: Ifebbe99eb2825cb6ee7d33d55cf3c087a9817f72 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-02feature: all input nodes must have same nextsDamjan Marion10-121/+88
Change-Id: Ie4c820933114af2269c99531856c45b0271a4a3e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-02ethernet: fix wrong start node for ethernet tx feature pathDamjan Marion1-1/+1
Change-Id: I3e02588e8c05ec50eacbe7c10cd5ac185daad43b Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-02Allow empty DPDK device init configPierre Pfister1-0/+1
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>
2016-11-02adj: fix typosDamjan Marion1-6/+6
Change-Id: Ib5b5a15223ac9252e9cacd163bd870b009ec3b63 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-01dpdk-hqos: don't hold up packets indefinitely under low loadDavid Hotham2-0/+34
Change-Id: If884637a6db0cb813a40920194795da2e98c8b23 Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-11-01feature: add new feature handling code and device-input featuresDamjan Marion22-408/+686
Signed-off-by: Damjan Marion <damarion@cisco.com> Change-Id: I010ecde93863dbdad84b993cd3680a5446db59b5
2016-11-01Fix recursion loop - recurse through coverNeale Ranns2-2/+72
Change-Id: I07870122f90e41fbb216b2f426bccbfd94049cd6 Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-01VPP-437: ip6 hbh processing with FIB 2.0Shwetha2-150/+29
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>
2016-11-01MPLS Exp-null TestsNeale Ranns5-47/+38
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>
2016-11-01vppinfra: add STATIC_ASSERT macroDamjan Marion2-6/+13
Change-Id: Icc4e74ae1627c5b97746ed64955a3dc089e3998f Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-01l2: fix l2-patch nodeDamjan Marion1-25/+10
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>
2016-11-01dpdk: use u32 for next0Damjan Marion1-4/+4
Change-Id: I0158a290736f68d0d56dff2f15dd18518059efd2 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-01config: rename ip_config_main_t to vnet_feature_config_main_tDamjan Marion26-47/+53
It will not be used for IP only... Change-Id: I90ef3030aff7f9e24767553f019cabc1ea987126 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-31Update _slabshr fields when updating HQoS masksDavid Hotham1-0/+6
Change-Id: Ia1042622c656861a80b856115aeb3c2e5cf5ea2a Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-10-31vppinfra: use 64-bit crc32 instruction in bihash_24_8Damjan Marion1-1/+9
Change-Id: Ibeb6d35e15a8d332753df7c352c0b51c277a0ee5 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-31vhost-user: fix crash in vhost_user_intfc_tx (VPP-519)Damjan Marion1-6/+0
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>
2016-10-29IPv6 Classify Forwarding Graph errorsNeale Ranns8-19/+24
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>
2016-10-28policer: replace uintX_t with uX, fix styleDamjan Marion8-1764/+1926
Change-Id: Ie4a0ba57d5c672ab04fe37801836f65d8731a90a Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-27Fix potential L2 forwarding crash with stale L2FIB entry (VPP-516)John Lo4-50/+44
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>
2016-10-27Fix coverity issues in LISPFilip Tehlar1-1/+2
Change-Id: Ifef27540f02f423070e8843951be5cba0acea8cf Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-10-27Per-packet IPFIX record generation pluginDave Barach1-1/+1
Change-Id: Ia790aa018e70d67ed343e3e466d1b33b22560fc0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-10-26features: fix crash due to missing null terminationDamjan Marion1-8/+8
Change-Id: I98b407f9b698307c5a0007b198a734674b33f925 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-26dpdk: enable building with dpdk 16.11-rc1Damjan Marion2-0/+28
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>
2016-10-26dpdk: remove support for dpdk 16.04Damjan Marion10-2602/+3
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>