summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-06-07VPP-83: fix collateral damageDave Barach1-0/+1
Accidentally removed pthread_mutex_unlock (&root_rp->mutex) in the dead client scan case. Oops. Bad idea. Change-Id: I488b7e39d01c267052785bd346e8846351db90a9 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-07Fix missing null termination in DPDK EAL ArgsDamjan Marion1-2/+2
Change-Id: I8292628ad359a19e02ff79568d773ad2b1af51ec Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-07Adjust buffer data offset based on rte_mbuff data_offDamjan Marion1-11/+6
This commit removes assumption that all packets have data offset equal to RTE_PKTMBUF_HEADROOM. Some drivers like fm10K receive packets with different data offset. Change-Id: I0aba6296458dab9df6fff639b4b827b2084ddc3e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-07Rebase DPDK patchesDamjan Marion7-100/+139
Change-Id: I3ef9faceb085bd06b55e3ba7800389eaae56177a Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-07VPP-110: vxlan encap node should never touch a deleted tunnelJohn Lo5-85/+141
Remove usage of dummy encap string for output from BD to a tunnel which has been deleted. Instead, use a node l2-outpt-del-tunnel so that if there are stale entries in the L2FIB for any deleted tunnel sw_if_index, l2-output will send packets using this entry to the l2-output-tunnel-del node which just setup the proper drop reason before sending packets to the error-drop node to drop the packet. Change-Id: I590982ee25e924ab74e2855c55c58baf29a9fad4 Signed-off-by: John Lo <loj@cisco.com>
2016-06-07Multicore support for vCGNShesha Sreenivasamurthy1-5/+91
Locks are used while populating DB, which is once once per entry. Therefore, it is not in the performance critical path. Each thread is a PMD, therefore, spin locks are used instead of mutexes. Change-Id: I4bc297f73a8f3eafebed1f00e51ec75ca24163f6 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-06-07Add u32[] type handling in reply messages to jvppMarek Gradzki1-3/+16
Change-Id: I9fd0cd49e4636d5d8978567fa914487785035c8a Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-06-07Fix link down issue of vxlan-gpe interfaceHongjun Ni1-26/+38
Change-Id: Iaf72e7ffb2d30799733f641d66bbc74f40a4d6e1 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-06-07IPv6 HBH: Refactor code. Separate out RFC2460 HBH handling and the more ↵Ole Troan8-568/+620
experimental IOAM code. Support dynamically adding options. By default only process HBH if explicitly configured to. Otherwise we'll just set ourselves up to be a victim of DOS. Change-Id: I41cdfdc00aeaa0cf568e4463440b89be761b6b7d Signed-off-by: Ole Troan <ot@cisco.com>
2016-06-07ONE-18: Fix trailing garbage string in LISP status dump APIFilip Tehlar1-0/+2
Change-Id: I5cba5eae5a981e41df3f227834a079e10982537f Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-06-06Add startup conf options to set per-interface descriptor ring sizeDamjan Marion3-7/+21
This patch introduces following 2 startup options: num-rx-desc num-tx-desc Which can be specified under the dpdk { dev PCI_ADDR {...} } or dpdk { dev default {...} } . "show hardware" output is extended to display what is set: TenGigabitEthernet2/0/0 5 down TenGigabitEthernet2/0/0 Ethernet address 90:e2:ba:96:d0:54 Intel 82599 carrier up full duplex speed 10000 mtu 9216 rx queues 2, rx desc 512, tx queues 2, tx desc 1024 cpu socket 0 Change-Id: Ia832885c8e5cf0eb0575367e97581e7065934753 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-05VPP-94: Add build-data directory for plugins and Makefile targetPierre Pfister3-2/+8
Commit e36af5f3153 moved sample-plugin a dedicated directory. The build system could not find sources for sample-plugin-* targets. This commit adds a dedicated build-data/packages directory for plugins and moves sample-plugin.mk there. Change-Id: I9e3ee8858580e86ff6d4f7317300df0a5e239a01 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-06-05VPP-112: linux kernel info missing from build logDave Wallace1-0/+9
Change-Id: I343418d409d682b00e74e41236382fdc6b3c780c Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-06-05VPP-113: BVI shall filter unicast DMAC for L2 to L3 forwadingJohn Lo5-15/+26
As BVI receive a packet with unicast DMAC from the BD, including unknown unicast flood packet, the packet should not be L3 forwarded unless its DMAC matches the MAC of the BVI. Change-Id: I46e18629c901062592c8ebe3a238c5cfdc1096b4 Signed-off-by: John Lo <loj@cisco.com>
2016-06-05Add per-device startup config supportDamjan Marion7-81/+183
This change adds support for providing per-interface parameters in the startup config. Sample configuration: dpdk { dev default { num-rx-queues 3 num-tx-queues 3 } dev 0000:02:00.0 { num-rx-queues 2 num-tx-queues 2 } dev 0000:02:00.1 } Change-Id: Ia7d9ae2ac9c4fd9baaa480d061a395f8a421a722 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-05dpdk: download from dpdk.orgThomas Monjalon1-6/+6
The tarball repository fast.dpdk.org is fast and reliable enough to be used in VPP build process. Change-Id: Ifaae57d6f8308127b93fc51b2a2a863da5766cd2 Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
2016-06-04Add dpdk config parameter: poll-sleep <nn>Dave Barach3-21/+24
Sleep <nn> milliseconds after each dpdk input device poll, useful when oversubscribing CPUs. Change-Id: I90ad1f21dae7eeeda56bfe845911118aa46f83ec Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-04VPP-100: Fix IP4 local handling of TCP/IP fragmented packetJohn Lo1-3/+3
Fix previous change that does not work on little endian machines. Use inline call ip4_is_fragment() which is endian neutral. Change-Id: I5a35d89d936650ab6c628dfc388b8c992a74a589 Signed-off-by: John Lo <loj@cisco.com>
2016-06-03Sample plugin moved to .../plugins/sample-pluginDave Barach1-4/+4
Change-Id: I6de20c9883d6918899c4b5b03e900814961e824d Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-03VPP-107 Fix for mistake that breaks pkg-rpm inEd Warnicke1-0/+1
https://gerrit.fd.io/r/#/c/1338/ Change-Id: I8b7fffe24cbeb435b18faaada9ef1cea9fd93d39 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-02VPP-92 Fixup some srv6 issuesChris Luke2-60/+70
Some small fixes to the srv6 code to bring it toward conformance with draft-previdi-6man-segment-routing-header-05. - The first segment needs to remain in the segment list. - The segment list template needs a space for the ultimate destination. - The ultimate destination needs to be inserted into that space when adding the SRH. Change-Id: I66db6912e0128da084f14ceca20918ef67ccff79 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-02VPP-106: Patch e40i driver to support VLAN sub-interfaceJohn Lo1-0/+41
Check packet for presence of VLAN tag in the MAC header and set the PKT_RX_VLAN_PKT flag to trigger sub-interface lookup in VPP ethernet-input node. Change-Id: Iadbfc59d08ef85efb936c88323a90194f3cd656f Signed-off-by: John Lo <loj@cisco.com>
2016-06-02VPP-91 fix sr tunnel add_del collision checkChris Luke1-58/+85
The add_del function was not properly checking if a tunnel already existed; instead it was checking if the given tunnel name existed. If no tunnel name was given it flat out refused to add a tunnel even though that is optional. Cleanup the add/del parameter validation to "do what I expect" it to do: When adding a tunnel: - If a "name" is given, it must not exist. - The "key" is always checked, and must not exist. When deleting a tunnel: - If the "name" is given, and it exists, then use it. - If the "name" is not given, use the "key". - If the "name" and the "key" are given, then both must point to the same thing. Change-Id: I9b48ae0203f9664cf8af0f7dc49bf480ddec10d5 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-02VPP-100: Fix IPv4 local handling of IP fragmented packetsJohn Lo1-3/+7
Before VPP is enhenced to do IP reassembly of local packets, just set the protocol path to "experimental" for now so they will be error-punted as unknow IP protocol. Change-Id: I2ffefb0b4205357653ba24d80c722cafd5972fba Signed-off-by: John Lo <loj@cisco.com>
2016-06-01VPP-105 Map API SHM uid/gid name to numberChris Luke1-1/+53
When providing uid or gid for the API SHM, if non-numeric values are given look them up in the local system user database and if found use the values discovered. Change-Id: I95152f58646643bc44d2af4cbad6338901935c69 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-01VPP-83 Allow non-privileged clients to use the vpp binary API.Dave Barach10-61/+108
Use the command line argument "api-segment { uid <nnn> gid <nnn> }" to configure shared memory segment file ownership. Defaults to uid = gid = 0. Shared-memory segments are explicitly set to 0770 mode, aka "rwxrwx---". Change-Id: Ic5d596b68139add61e7de6ace035c57dfd030111 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-01VPP-98 Dedicated storage for VXLAN over IPv6 hash keysChris Luke3-53/+66
When creating VXLAN over IPv6 the code was using storage for the hash key that could later be moved. Since the key is larger than the word size this was being referenced as a pointer; when the storage moves that breaks the hash. Instead allocate dedicated storage for the key. This patch also includes other minor cleanups, including using clib_memcpy in places it should be used and some whitespace fixes. Change-Id: I579f2cb515853ef56dedcca350fcad08aa6111a9 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-01vagrant: disable automatic update on startThomas Monjalon1-0/+1
The box update requires an internet connection. It is better to disable it on vagrant start. It still can be updated with the manual command: vagrant box update Change-Id: I04e05ea08477bf36f25672c54d0a057d995d4a42 Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
2016-05-31Fix build-root/scripts/version to not have spurious ~Ed Warnicke1-3/+2
Change-Id: Id28f134e3a4aa19c5756014d53004501db0d0c88 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-31Fix u16 type handling in jvppMarek Gradzki3-4/+133
Change-Id: I6e5ed2562c65dde6c9f6f085c8b9d40f80684894 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-31VPP-102: vHost reconnect to previously used sockets on VPP restartJohn Lo1-0/+8
Change-Id: Ida11bddb52268e0e8513b7b379eeed6103bd48f1 Signed-off-by: John Lo <loj@cisco.com>
2016-05-31VPP97: Flooding of pkts with multiple buffers in BD with BVI crashes VPPJohn Lo2-9/+3
The loopback interface should use vnet_interface_output_no_flatten so follow-on buffers of a jumbo packet do not get put on the output frame and be sent back to ethernet-input or l2-input node. The replication_recycle_callback() function should not assume follow-on buffers of a jumbo packet are on the buffer free list. Change-Id: Ide646a6d9b43e82782c0581ea3022a9e70f82582 Signed-off-by: John Lo <loj@cisco.com>
2016-05-31Fix hash table bogus read in ip6 vxlan-gpeFlorin Coras2-13/+3
- consistent use of hash_*_mem methods. - tunnel setup copies the key from the wrong location - remove extraneous storage for keys copied from the vxlan node that is not applicable here Change-Id: I419fd30a52ba387104abe467c296de85233823d1 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-31Add CLI/API for clearing all remote mappingsFilip Tehlar5-28/+90
Change-Id: I5aef12d3a9c8daefff52e5f958c504f5d2ff9fd0 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-31ONE-15: Fix duplicate locator, refactoring locatorAndrej Kozemcak3-246/+156
Check duplication locator and clean after locator when remove it. Refactoring locator_set code. Change-Id: Ib83cbcddc7a363a60fa5b6a366203d0dc0ea7ca6 Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
2016-05-31ONE-16: Locators are not properly cleanedFilip Tehlar1-2/+16
Change-Id: Ia6eaaa9a741e84cbd0ff957cfd9a7143a3d0a977 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-30Add Dump API for VxLAN-GPE tunnelHongjun Ni6-38/+202
Change-Id: I4913fe6c4b1280939147887896aea9b79a9f7f10 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-28VPP-84 af_packet retry on EAGAIN, count on errorsChris Luke2-9/+32
When af_packet signals the kernel that there are packets in the tx ring with sendto() the kernel sometimes responds with EAGAIN. Previously the af_packet driver would treat any error from sendto() as fatal. Whilst there's not much we can do about this, count the errors and let's try to not die on the spot or sit in a loop forever. Change-Id: Id76ba5e07b744f1ed6f348ec838a1ac506a381c9 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-28VPP-96 ENID driver update for rx of jumbo pkts using muliple mbuf'sJohn Lo4-2/+800
Change-Id: I0e985b079da3224f4886e3ee2cece4d046e291eb Signed-off-by: John Lo <loj@cisco.com>
2016-05-29Fix VxLAN-GPE add_del API issueHongjun Ni1-2/+2
Change-Id: I4210b3320d3fe841ba7ff1349b6a52affc047338 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-27VPP-95 VXLAN add_del API intermittent failureChris Luke2-3/+3
The VXLAN add_del API sometimes rejects calls with VNET_API_ERROR_SAME_SRC_DST when the two parameters are obviously different. This is because the API code is checking the "is_ip6" flag in a not-yet initialized area of memory leading to random results. Also fix help text for vxlan_add_del_tunnel in vat. This does not change the API; it repairs intermittent failure. Change-Id: I41863694f478c1f669078f82f69d8cca4841c989 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-27Fix dpdk march/mtune defaultsDamjan Marion1-1/+1
Change-Id: I6e6940c8467a331b37da153bb8a2154c1d165261 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-26Add show command for LISP map resolversFilip Tehlar1-0/+21
Change-Id: I3ed6269f9a307b50b56ce04defc2576a139c6add Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-25Move dpdk startup config data to separate structDamjan Marion8-138/+148
This is preparation work for moving DPDK EAL and mempool initialization to vlib. Change-Id: I2dc35aa53edec0e07fc2650d630aa625831154c3 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-25ONE-14: Fix crash when re-enable LispAndrej Kozemcak1-4/+9
Change-Id: Ib95338d7055dea9036eddb7dff5ca7ccbcb35639 Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
2016-05-25Add Vxlan-Gpe over IPv6Hongjun Ni9-715/+1021
PatchSet4: consolidate code as per comments. PatchSet3: simplify the code using ip_udp_encap_one/two PatchSet2: consolidate comments and indent style Change-Id: Ia8b43f854a46d77e838e198566200ad28fd72472 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-24VPP-86: fix array copy in generated JNI codeMarek Gradzki4-22/+169
Change-Id: Ic67b3c0623d98c5ee3f1ffa1e1bd9cfb96b233bd Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-24Fix an issue in format_vxlan_gpe_tunnelHongjun Ni1-0/+4
Change-Id: Ib283c75505b787f715e34f5b325dda8a6c2fa125 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-23Native VPP driver for Intel Niantic family of NICsDamjan Marion11-0/+4560
Available only in vpp_lite platform Change-Id: I09d112af5f7f4521ec25196ecdd8c02c20eedd5f Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-23Move rte_delay_us_override so it overrides DPDKTodd Foggoa3-42/+47
The current location in the vnet dynamic library does not override the dpdk weak function as intented. Moving this function to the main app allows the linker to find the non-weak symbol and override it. Change-Id: I96c6dc5af2e511cc1f84bd66419c5a4ac96a9541 Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>