summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-10-05Load Balancer: Use FIB 2.0Pierre Pfister4-402/+358
This patch fixes load balancer, which was not working since FIB 2.0. Two FIB DPO types are defined: - One for IPv4 GRE - One for IPv6 GRE When an AS is created, the plugin automatically uses the result from the FIB in order to transmit the packet. Therefore, the packet does not need to visit ip-lookup twice. The 'bypass' command was removed, as it is now done automatically using this process. Change-Id: Ib505ba31bfc67897eaff752821087821c360360a Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-10-05dpdk: fix issue in parsing startup.conf dpdk sectionDamjan Marion1-1/+1
Change-Id: Ibbcce6f54bc76b8922b1c649278643c6294d13f9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-05Fix mutex/condvar sleep when adding API msgs, VPP-461Dave Barach1-2/+39
Simply put, threads cannot sleep waiting for the vlib memory api main input queue to drain. If, say, thread i (i !=0) fills the vlib api main input queue with rpc requests - and then blocks trying to add another request - the game is over. RPCs attempt a barrier synchronization, which fails with Pr = {1.0} because thread i is in a mutex/condvar sleep. Add a main-thread cut-through path, which directly invokes the RPC callback function when called on the main thread. Change-Id: Ib036f0cc43b5738455c3a111cff64a132537152e Signed-off-by: Dave Barach <dave@barachs.net>
2016-10-04Fix CLI 'set interface unnumbered' to work with FIB 2.0Igor Mikhailov (imichail)1-0/+4
Commit of the patch from Neale Ranns Change-Id: Ia0480ef56036dd0aec990c3892a93b99eb9fb893 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-10-04Minor tweaks to hqos docChris Luke2-290/+408
- correct formatting errors - add to user_doc tree - unix line endings, not windows(!) Change-Id: I9aa5511c398fc33ecb25fb33ae64c8e666c56dd8 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-10-04Fix LISP L2 fwd entry updatesFlorin Coras1-7/+10
Change-Id: I554041bf47aa82dd6f6e0563c68d8bbd3b18b255 Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-10-04VPP-355: add PBB (802.1ah) tag rewritePavel Kotucek12-108/+697
- new API/CLI to define pbb tag rewrite on interface - encapsulation/decapsulation of PBB tags - tracing of PBB header - PBB tag rewrite operations Change-Id: I538b3025a8b2e41cdeed9f10fea94bbcd28b5f5f Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2016-10-04Update CSIT tests 160925 -> 161002Jan1-1/+1
- update of CSIT operational branch to be used for VPP-patch test Change-Id: I45f35e14e162bc1e8c69bd632f8813dde9f8270b Signed-off-by: Jan Gelety <jgelety@cisco.com>
2016-10-03test: new test infrastructureDamjan Marion14-0/+2436
Change-Id: I73ca19c431743f6b39669c583d9222a6559346ef Signed-off-by: Jan Gelety <jgelety@cisco.com> Signed-off-by: Juraj Sloboda <jsloboda@cisco.com> Signed-off-by: Stefan Kobza <skobza@cisco.com> Signed-off-by: Matej Klotton <mklotton@cisco.com> Signed-off-by: Maciek Konstantynowicz <mkonstan@cisco.com> Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-03FIB Memory Usage DiagnosticsNeale Ranns27-387/+333
add two new CLI commands: show fib memory show dpo memory to display the memory usage of the FIB and DPO object types respectively. Change-Id: I759e149a0b6fbb58d59c139362221dc33531cffa Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-10-03vhost-user: avoid branching during prefetchDamjan Marion1-5/+2
Change-Id: I1f4421289b2f93b64a2470559d834717ef40e181 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-03vhost: predict map_guest_mem returns similar results over timePierre Pfister1-13/+44
It is very likely that all packets are being stored in the same memory area. It is also likely that all indirect descriptors are being allocated from the same area. This patch takes this into account by predicting the value returned by map_guest_mem will be the same as the previous one. It falls back to slow mode otherwise. Change-Id: Ic1044a172fc4abe77387ba2e19e11cd1f39ad1e3 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-10-03Fix string parsing in lisp map-request itr-rlocs commandFilip Tehlar1-1/+1
Change-Id: Ie17b324492d61130690ba9d05821eaefe10072d4 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-10-03L2 over LISP and GRE (VPP-457)Neale Ranns57-2423/+3800
Change-Id: I0d7f9c7f41a9f9e0acb0950adedb90d45df08c2a Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-10-03Remove old test filesDamjan Marion20-712/+0
Make space for upcoming test framework. Change-Id: I14da6cf95c645d8ee2b71579a658dc7ef3b9f027 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-03(VPP-455) arp doesn't work when ip4 classifier configured with fib 2.0Neale Ranns7-6/+160
Change-Id: I046de0c00db75d25ed90e33e9910c9dd0ff95580 Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-09-30VPP-363: add ability to change mac address of the interfacePavel Kotucek9-0/+179
Added ability to change interface address. Added new CLI and API functions. Change-Id: Ia336bc75ad8c5858c26f39af851485c4c6f19f58 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2016-09-30Fix double-free crashDavid Hotham1-0/+1
loop0 interfaces were transmitting the same packets multiple times, eventually causing them to be freed multiple times Change-Id: I32fcf5cfa10e58bb9e9bbbbc1b9312518d00ee9f Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-09-30Remove RPM package dependency on vpp-develJohn DeNisco1-1/+1
Change-Id: Ie6e1b3c8c2e0cf64f06aafe13a693686fd4b486a Signed-off-by: John DeNisco <jdenisco@cisco.com>
2016-09-30VPP-454 Fix LISP GID dictionary issueFilip Tehlar2-7/+54
GID dictionary IP prefix entries are rewritten with more narrow one which is not desirable. This patch does exact matching instead of longest prefix matching. Change-Id: I0191e23229a69ffe86f82ea4d71e4a5534dbb5b0 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-30vat: add pg interfaces to sw_interface_dump (VPP-451)Damjan Marion1-0/+5
Change-Id: I976a44dcfb32b1132c14363174239333315b2c6f Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-30VPP-450 Fix adding LISP adjacencies via CLIFilip Tehlar6-125/+103
Change-Id: If90c9c630629e727fffc5d450516045a04433661 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-30VPP-120: include custom types to Python representation of vpe.apiMarek Gradzki4-22/+44
Change-Id: Ide97a8bf55d3baf41a1e86af2c67c6b7b26b657a Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-09-29VPP-378: rename jvpp package to the same as groupId of deployed jarsMarek Gradzki44-224/+224
Related changes: - NSH: https://gerrit.fd.io/r/#/c/3181/ - Honeycomb: https://gerrit.fd.io/r/#/c/3182 Change-Id: Ifdd6b8b575916fdf99794618dbe604c2e17e8e82 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-09-28DPDK HQoS: Enable Hierarchical Scheduler in VPPJasvinder Singh12-6/+2448
This commit extends the vpp framework with new thread type "hqos-threads" that runs the Hierarchical Quality of Service (HQoS) scheduler associted with output interface. HQoS Scheduler prioritize the packets from different users and ensures sufficient bandwidth to pass the more important traffic. At high level, HQoS scheduler is a buffer that can temporarily store a large number of packets. In otherwords, it is a collection of large number of queues organized into hierarchy of 5 levels; the port (i.e. the physical interface) is at the root of the hierarchy followed by the subport (a set of users), the pipes (individual users), the traffic classes (each with a strict priority) and at the leaves, the queues. In each HQoS scheduler, three operations are performed; classification (setting HQoS port, subport, pipe, traffic class and queue within traffic class from packet fields), enqueue (selecting HQoS queue for the packet, and to drop the packet if the queue is full) and dequeue (schedule the packet based on its length and available credits, and handover the scheduled packet to the output interface). In vpp, the number of hqos threads will be equal to cpu cores specified in corelist-hqos-threads parameter cpu section of the vpp configuration file. One hqos thread can run HQoS for multiple output interfaces. A particular HQoS instance is initialised with default parameters required to configure hqos port, subport, pipe and queues. Some of them can be re-configured in run-time through CLI commands as well binary APIs. Following illustrates the sample startup configuration file with 4x worker threads feeding 2x hqos threads that handle each HQoS for 1x output interface. For more details on HQoS configuration please refer to DPDK Programmer's Guide. dpdk { socket-mem 16384,16384 dev 0000:02:00.0 { num-rx-queues 2 hqos } dev 0000:06:00.0 { num-rx-queues 2 hqos } num-mbufs 1000000 } cpu { main-core 0 corelist-workers 1, 2, 3, 4 corelist-hqos-threads 5, 6 } Change-Id: I635c3395a7c4ddf0a239ef77b0b0a31a6dfc4767 Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
2016-09-28Fix packet trace for IP4/IP6 lookup/forwarding nodesJohn Lo2-11/+8
Change-Id: Ibf3d2e69dbac28fbef77d8ba20d7f5a60eea0198 Signed-off-by: John Lo <loj@cisco.com>
2016-09-27classify: fix issue with output classify node using wrong sw_if_indexChristophe Fontaine1-6/+6
Output classify node should use sw_if_index[VLIB_TX] Like in l2_output.c, we have to use sw_if_index[VLIB_TX] to get the appropriate configuration. Change-Id: I96b1a03ddf5c9e9c45fa3f5df3ea88895ed4345e Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-09-27arp: handle ARP proxy after tunnellingDavid Hotham1-3/+4
Only rewind the buffer back to the start of the ethernet header, rather than all the way. We don't want to undo earlier decapsulation. Change-Id: I5f4b183eb3e8df690695ce3a97e55f3b0579a266 Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-09-27Fix RPM packaging dependenciesJohn DeNisco1-1/+1
Change-Id: Ife1523e11b7225ea0fd41c06c3b802bb171e91f4 Signed-off-by: John DeNisco <jdenisco@cisco.com>
2016-09-27VPP-308: Added workaround for failed vnet build. For some reasonThomas F Herbert1-0/+1
the clock slew is greater with Vagrant 1.8.5 which causes Makefile.am to be timestamped as newer which causes builds to fail. Change-Id: Id0d35c41ac66a2841c5aae20dd678f4bc125e41b Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2016-09-27Fix hugepage detection issueDamjan Marion3-40/+40
Per-numa free hugepages number was not read correctly due to wrong sysfs path. Change-Id: I889111027d7f93c42e2e4673d8d4e8f75ae065b6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-27Scheduler policy & priority config, few minor fixes (VPP-425)Pavel Kotucek3-20/+31
- scheduler-prio -> scheduler-priority - improve formatting of "show threads" output - add description to "startup.conf" - bail out of priority is set without rr or fifo policy Change-Id: Idf897f7603d989d6c2d0093eea89c5d1653eaa8c Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2016-09-27Fix missing output in generated CLI/configChris Luke3-7/+8
The templates were looking for the name of the CLI_COMMAND and CONFIG_FUNCTION structures in the srong place. Change-Id: I709d6716216173ba6a7ed41a260728238f96d2db Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-09-27FIX sysctl configuration directoryMiroslav Miklus2-4/+4
man sysctl.d: ... Packages should install their configuration files in /usr/lib/. Files in /etc/ are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages. All configuration files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in. If multiple files specify the same option, the entry in the file with the lexicographically latest name will take precedence. It is recommended to prefix all filenames with a two-digit number and a dash, to simplify the ordering of the files. If the administrator wants to disable a configuration file supplied by the vendor, the recommended way is to place a symlink to /dev/null in the configuration directory in /etc/, with the same filename as the vendor configuration file. ... Change-Id: I24b8b7fddf64ec287282ae195e07c9592c494ebe Signed-off-by: Miroslav Miklus <mmiklus@cisco.com>
2016-09-27VPP-448 Fix LISP APIs using binary dataFilip Tehlar2-10/+29
* use zero length array in LISP API to avoid confusion * add missing LISP data structure definitions in API documentation * fix wrong memory allocation in VAT Change-Id: I9b5e656a071fc24cb698c164db953c09b66deeeb Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-27Fix "show adj nbr" displaying IP4 address for IP6 neighborsJohn Lo1-2/+2
Change-Id: Ic453e68bbd3d5ae8d57b513da6781bb957fc84a4 Signed-off-by: John Lo <loj@cisco.com>
2016-09-27fix create sub-interface range cliEyal Bari1-1/+3
the create sub interface command was creating the interfaces with the same outer_vlan value - causing an error changed to use the interface id as outer_vlan in case of a range Change-Id: I3808094d1c99a37adac61e3ece573a6687306461 Signed-off-by: Eyal Bari <ebari@cisco.com>
2016-09-27VPP-425: Scheduler policy & priority configurationPavel Kotucek3-4/+100
Add ability to hadle scheduling policy and priority via config file. CPU section contains new items to specify scheduling policy and priority: cpu { scheduler-priority <num> scheduler-policy [other | batch | idle | fifo | rr ] } Change-Id: Ie20765280e458e1d7deb4a8c66daaa69793f795e Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2016-09-27Fix CLI for adding negative LISP fwd entriesFlorin Coras1-0/+1
Change-Id: I9ee7b6ea2def16715f717f8483c86e0157628946 Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-09-27LISP Source/Dest control plane support, VPP-197Florin Coras11-115/+805
Change-Id: If88e4161e0944b657e6183b7b44348f7f46ba0a8 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-27Fix import line for setup.pyPeter Ginchev1-2/+2
Build fails in case python-setuptools is not installed. Change-Id: I1611f3560db82a4a48c51a9f614a813a9a540698 Signed-off-by: Peter Ginchev <pginchev@cisco.com>
2016-09-26Fix for potential use of uninitialized variablesIgor Mikhailov (imichail)1-23/+13
The code allowed for the command 'set interface unnumbered' to be processed without specifying any parameters, thus the set logic of the command would have been using uninitialized variables 'unnumbered_sw_if_index' and 'inherit_from_sw_if_index'. Change-Id: I4de14fa1096527c5c48f74304db379f9953760a8 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-09-26Update CSIT tests 160919 -> 160925Jan1-1/+1
- update of CSIT operational branch to be used for VPP-patch test Change-Id: I5daf02786185159cd2a156144f247d3b45369c33 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2016-09-26Fix jvpp-core dependenciesMarek Gradzki1-2/+2
Change-Id: I242d590c9d2fa733cc1411fa5d96bb3944d5b5fe Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-09-25Packet-generator related fib 2.0 fixesDave Barach2-4/+10
Fix dpo0->dpo1 typo in ip4_local source RPF check. Pass source RPF check on drop adjacencies. Add a bit of defensive driving in ip4_icmp_error(...). Change-Id: I0e444886953f5500766f9b9662fad79fef44a260 Signed-off-by: Dave Barach <dave@barachs.net>
2016-09-23Rmove duplicate register of unformat_l2_input_next_nodeHongjun Ni1-3/+0
Change-Id: I38dc7c37b0debcea9aa1a366b516e86505dd096e Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-09-23Fix source RPF check in ip4_localDave Barach1-0/+5
We need to accept src ip addresses which hit receive and clean adjacencies. Change-Id: I8cf07f622058203665ed09280452ed8412984bd5 Signed-off-by: Dave Barach <dave@barachs.net>
2016-09-23Fix eventfd leakage issue in vhost-user modeSteve Shin2-6/+57
The leakage happens on the file descriptors for kickfd and vring's callfd. Those file descriptors should be closed when vhost-interface is disconnected. Change-Id: I12453b0c3eac037a1dc040a001465059b8f672c2 Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-09-23Python API: Preparation for RPM/DEB packaging.Ole Troan12-65/+138
Recheck. Repackage the Python API binding to include all necessary modules in a single Python package. Change-Id: I5e35141d413bfb1aad650217e1ca07d85646c349 Signed-off-by: Ole Troan <ot@cisco.com>
2016-09-23VPP-424 fix lldp_main declarationKlement Sekera1-1/+1
Change-Id: I1f30977f0b315fa72d73a29a8585b1711d5044d8 Signed-off-by: Klement Sekera <ksekera@cisco.com>