summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-06-14Retire io threads and main-thread-io modeDamjan Marion10-1001/+19
Change-Id: I64f5ec5e32f200834c63ec3b304f9f20cef332a7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-14Fix double-enqueued packet in interface-output dual-loop, fixes VPP-116Damjan Marion3-29/+47
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>
2016-06-14Cleanup /dev/shm before starting VPP from top-level MakefileDamjan Marion1-0/+2
Change-Id: I3a8b85ad033707552b9df7d0d08548517a8571ce Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-14Add sw_if_index to af_packet_create and various clean upsKeith Burns (alagalah)5-12/+96
Change-Id: I4c2972b55d5d99f3aa7a05885791eef47351c734 Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-06-15Fix name confusion for gre interface index.Hongjun Ni2-6/+6
Change from free_vxlan_tunnel_hw_if_indices to free_gre_tunnel_hw_if_indices. Change-Id: I32f04f2b6b28fcf80d2fc0c37c67e343317dce7c Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-06-13Fix NULL-pointer crash in handoff_init(...)Dave Barach1-4/+7
Change-Id: If403f83b4e918e81e7b2e90dfca14960ad2c6aa6 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-13Add worker-handoff nodeDamjan Marion8-439/+829
worker-handoff node is universal node which taakes packets from the input node and hands them over to worker threads. Currently it supports flow hashing based on ipv4, ipv6 and mpls headers. New cli: set interface handoff <intrerface-name> workers <list> e.g. set interface handoff TenGigabitEthernet2/0/0 workers 3-6,9-10 Change-Id: Iaf0df83e69bb0e84969865e0e1cdb000b0864cf5 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-13Add vxlan-gpe tunnel to sw_interface_dumpHongjun Ni1-0/+7
Patchset 2: rebuild Change-Id: I3375d6c9c7e18ab46896552614369b9d77ee6004 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-06-13Explicity specify IP address type for format_ip46_address functionDamjan Marion7-12/+50
Change-Id: I3379517535a98a7a5fbd3173503f288a81378821 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-13VPP-117: Fix ip4 and ip6 lookup and rewrite tracesPierre Pfister2-68/+95
Previous patch was printing wrong data since rewrite node traces an ethernet packet while other ip nodes trace an IP packet. This patch introduces different tracing functions for: - lookup node (where the fib index is valid) - rewrite node (where an ethernet frame is available) - other ip nodes (only the ip header is traced) Change-Id: I5971a2e89ae8668f5aed4a410565a5f27e01fc22 Signed-off-by: Pierre Pfister <ppfister@cisco.com> (cherry picked from commit 584b99a0120778108bd019b697639fbf3c1505d1)
2016-06-12Fix next-protocol issue configured from HoneycombHongjun Ni1-1/+1
PatchSet 2: rebuild. Change-Id: I18ee050629129871b44271f92a1e63b661d55c05 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-06-10Return 0 if no tap interfaces are readyDave Barach1-1/+1
Otherwise, if tapcli-rx manages to make it into polled-mode, it will never leave polled mode. This has been wrong since day 1, sometime in early 2013. Change-Id: I124e01a48db5abbc4eb5240c8d59f76dc562e9f2 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-10Copy missing buffer metadata for ESP transport mode packetsDamjan Marion1-1/+4
Change-Id: I3f5113533b365366cc3f6ef87858e19879f703cf Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-10NXP dpaa2 platform initial supportSachin Saxena1-0/+63
- On ARMv8 aarch64 CPU - TARGET is aarch64-linux-gnu - Cross compilation enabled with "gcc-linaro-4.9" toolchain make PLATFORM=dpaa2 TAG=dpaa2 ... Change-Id: I8faf5c8b0d3c81d33a2834c6429a05c8379309c1 Signed-off-by: Sachin Saxena <sachin.saxena@nxp.com>
2016-06-10Fix issue: no handler for msg id 13Hongjun Ni1-352/+351
Delete send_sw_interface_flags within sw_interface_dump, because send_sw_interface_details has covered the link status. Change-Id: I8ea8024ff88cfcc5799913762f047767fdb3c79c Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-06-09VPP-133: increase size of cli process stacksDave Barach1-1/+1
Change-Id: Ic488b95b54438028940403b02a5916347c53bd05 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-09Add verbose flag for packet trace, show hexdump in verbose dpdk input traceDamjan Marion5-7/+27
Verbose trace can be enabled with: trace add dpdk-input 1 verbose Change-Id: If58cfc561143d5a44f7d11e61d54b6835692a0e3 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-09Add format_hexdump functionDamjan Marion2-0/+49
Function output is compatible with text2pcap tool Sample output: 00000: 54 68 65 20 71 75 69 63 6b 20 62 72 6f 77 6e 20 [The quick brown ] 00010: 66 6f 78 20 6a 75 6d 70 73 20 6f 76 65 72 20 74 [fox jumps over t] 00020: 68 65 20 6c 61 7a 79 20 64 6f 67 00 [he lazy dog.] Change-Id: If77ec7d91b77146df770698e0cf35fe2f6dd0821 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-09VPP-117: Add trace to ip4 and ip6 lookup nodesPierre Pfister4-19/+84
The absence of trace in ip lookup nodes is misleading to many people. This patch adds ip lookup tracing and therefore contribute to worldwide happiness. In addition, this patch makes sure sw_if_index[VLIB_TX] is considered when tracing the fib_index value. In ip4/6-rewrite, the value corresponds to the tx interface index. The formatting function is therefore modified to take that case into account. Change-Id: I5915f0446a15c45e391eedfdfcedd9057aa6a237 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-06-09VPP-106: fix performance hit due to unprefetched data readDave Barach4-47/+17
Change-Id: I1325b60b6deadcb51631e178011a31ee70c06cc7 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-09Fix DPDK init crash if bonded interface is created by startup confJohn Lo1-7/+10
Change-Id: I4d7d4a56aba010aa868b1f4c2c4e8db0b4c21fd7 Signed-off-by: John Lo <loj@cisco.com>
2016-06-09VPP-119: JVpp notificationsMaros Marsalek21-141/+761
- add notification DTOs to JVpp - add notification callbacks - add notification registry - provide/implement notification registry from future and callback facades Change-Id: I1060ef2ec8ba1eb2e8cff279c93b73aa7c9f9aee Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-06-09HONEYCOMB-67 Introduce exception handling into JVPPTibor Sirovatka23-127/+529
Send calls throws VppInvocationException on failure Failed requests (negative retval) reported over onError callback interface method Removed retval attributes from dto/xxxReply.java calls Change-Id: Ibd4e90c320d080e02d75b4bd056a7b11c8e37aa7 Signed-off-by: Tibor Sirovatka <tsirovat@cisco.com>
2016-06-09VPP-127 Removed spurious use of sudoEd Warnicke2-2/+2
Change-Id: I1eb18fc6379db30fb802e3b929931788f54e7dc2 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-09VPP-129: Add build-root/scripts/csit-test-branch scriptEd Warnicke1-0/+2
This script returns the csit branch that should be used for testing and verification. Related to csit patch: https://gerrit.fd.io/r/#/c/1344/ Change-Id: I51e44e4ba4dc433056ac8a870f8b7c7f9518189b Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-09VPP-115: Remove stale ACL CLIs which are not supportedJohn Lo2-39/+3
The old ACL CLIs still show up in CLI help which can confuse users. Change-Id: I9a3722d3d649c4370df6a09b2c07628e7e4aa0f4 Signed-off-by: John Lo <loj@cisco.com>
2016-06-08VPP-127: Make rpm/deb provide vpp group to access vpp-apiEd Warnicke4-0/+16
Change-Id: I80b7f55034d64ad8360e29c669002948317c64ba Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-08VPP-124: Fix rpms to work out of the box.Ed Warnicke3-1/+17
Currently, for vpp we are not building any rpms for dpdk or igb_uio. This is because uio_pci_generic as shipped with centos works with vpp. However, our vpp rpms do not install kernel module uio_pci_generic at start up and the /etc/vpp/startup.conf does not configure vpp to use uio_pci_generic. vpp rpms should do both, so that when the vpp rpm is installed and vpp started, it just works out of the box. This patch fixes the rpms to do so. Change-Id: Ib934b51f9271cded466d235aa4044bef75c35960 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-08Increase jvpp connection timeoutMaros Marsalek1-2/+2
Change-Id: I4d52c113336deac80dfcbad91b21a7a70eea2213 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
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>