summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-08-03acl-plugin: multicore: CSIT c100k 2-core stateful ACL test does not pass ↵Andrew Yourtchenko4-41/+106
(VPP-912) Fix several threading-related issues uncovered by the CSIT scale/performance test: - make the per-interface add/del counters per-thread - preallocate the per-worker session pools rather than attempting to resize them within the datapath - move the bihash initialization to the moment of ACL being applied rather than later during the connection creation - adjust the connection cleaning logic to not require the signaling from workers to main thread - make the connection lists check in the main thread robust against workers updating the list heads at the same time - add more information to "show acl-plugin sessions" to aid in debugging Change-Id: If82ef715e4993614df11db5e9afa7fa6b522d9bc Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit 8e4222fc7e23a478b021930ade3cb7d20938e398)
2017-08-03DHCP Client: receive unicast ACKsNeale Ranns3-29/+151
despite VPP DHCP client setting neither ciaddr nor giaddr and setting the broadcast bit (see RFC 2131 section 4.1) some DHCP servers will still send a unicast DCHPACK. So as not to drop this VPP must have both 1) a receive FIB entry for the OFFERED IP adress and 2) a 'don't drop me because of uRPF' FIB entry for the DHCP server's address. Change-Id: I167d858deb45629318cbdccf5bf67d971730a42f Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-08-03Add support for API client to receive L2 MAC eventsJohn Lo11-173/+605
Added APIs want_l2_macs_events and l2_macs_event to allow an API client to receive notification events from VPP for MAC learned or aged in L2FIB. Only one API client is allowed for L2 MAC events. The want_l2_macs_events API allow caller to specify MAC learn limit, event scan delay and max number of MACs that can be included in a event message. These parameters should be choosen properly as to not have too many MAC events sent by VPP and overwhelm the API share memory. They can all be left as 0's so VPP will setup reasonable defaults which are: 1000 learn limit, 100 msec scan delay and 100 MACs per event message. If want_l2_macs_events is never called, VPP learning and aging should behave as before except that MAC entries provisioned by API or CLI will not be aged, even if it is not set as static_mac. These non static MACs, however, can be overwritten by MAC learning on a MAC move as a leared MAC. Only learned MACs are subject to aging. Change-Id: Ia3757a80cf8adb2811a089d2eafbd6439461285c Signed-off-by: John Lo <loj@cisco.com>
2017-08-03gtpu bypass function doesn't work (VPP-924)jerryian1-0/+14
Change-Id: I80183f7d984ed6ed2e3405d1bb65fe761a29bc81 Signed-off-by: jerryian <gu.jian1@zte.com.cn>
2017-08-02LISP: make TTL for map register messages configurableFilip Tehlar6-0/+248
Change-Id: I38e1c6a6b033e12ef3f4345a1deff73fa4adbea0 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2017-08-02Fix vpp crash sending arp or probing neighb (VPP-917)Pavel Kotucek2-0/+29
VPP crash when trying to send arp message or to probe neighbor over interface with IP address but without hw address (local0 and tunnels - vxlan, gre, ...) Change-Id: I08a1c97d3ea913fc11b2886cf73b2ccc31356664 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2017-08-02Fix ip checksum offload, move badly-placed ASSERTDave Barach2-2/+4
Change-Id: I5e04d618c4b4987edc64f6d82fd0a81b8362dbb0 Signed-off-by: Dave Barach <dbarach@cisco.com>
2017-08-02memif: construct interface name out of socket file idx and intf idDamjan Marion1-2/+4
Change-Id: Ib4de018a84e9c94df26a8870bf1b04e26204ace1 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-02Added NASM package to support SW cryptoMarco Varlese1-1/+1
Change-Id: Idd6614b80e456eb40c760024b563ffd0e5c313ec Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-08-02Update CSIT tests 170724 -> 170731Jan Gelety1-1/+1
- update of CSIT operational branch to be used for VPP-patch test Change-Id: I3ec322a71764d6d3e8aaeeabd4464fd6bde2880e Signed-off-by: Jan Gelety <jgelety@cisco.com>
2017-08-02Fix tcp tx buffer allocationFlorin Coras15-120/+375
- Make tcp output buffer allocation macro an inline function - Use per ip version per thread tx frames for retransmits and timer events - Fix / parameterize tcp data structure preallocation - Add a couple of gdb-callable show commands - Fix local endpoint cleanup Change-Id: I67b47b7570aa14cb4634b6fd93c57cd2eacbfa29 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2017-08-02Make ip csum configurable in vlib buffer functionsFlorin Coras8-24/+28
Also fixes csum computation for lisp control plane 4o6 encapsulated control messages. Change-Id: I991e0b5c0d16dc51e0b5bdc79e1d752270b34765 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-01FIB path weight incorrect in dump (VPP-922)Neale Ranns6-11/+17
Change-Id: I655f41878ca3595681d0255782b0faba01c9824b Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-08-01Tests for recursive load-balancing with no choices.Neale Ranns2-5/+68
Change-Id: I90bb3369576741d03628a818ffa63cc99d6e4c98 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-08-01P2P EthernetPavel Kotucek18-34/+1145
Change-Id: Idb97e573961b3bc2acdeef77582314590795f8c3 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2017-08-01SPAN/API:enable L2 dumpEyal Bari4-7/+25
Change-Id: Icea1dff33aae35a85ae1a7ed1900a0abb3fe4b6b Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-07-31ssvm->name must be a vector containing a c-string.Dave Wallace2-3/+5
Change-Id: I14a97a7fdd000da62d2ed4bea71f55ee34a21311 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-07-31jvpp: moving current tests to separate folder marked as examplesMatej Perina31-183/+114
Change-Id: Ib1a13e0a6cba69aba7a26e1bd52f4c55c4ccc027 Signed-off-by: Matej Perina <mperina@cisco.com>
2017-07-31CLI:add l2 input/outut to "sh int features"Eyal Bari6-15/+79
Change-Id: If608bbc7f4c8b0d5c3a237098a20279e407c82d3 Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-07-31Fix fib_path encoding (VPP-921)Florin Coras1-0/+2
Change-Id: I4c3b22c333b052d068f1a5977e9d4e38471693d6 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-07-31SPAN/CLI:fix disable + add errorsEyal Bari1-16/+44
Change-Id: I3c697615698b622a2484df43fb78980be9b7ae98 Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-07-30Make tcp active open data structures thread safeFlorin Coras19-254/+321
- Cleanup half-open connections and timers on the right thread - Ensure half-open connection and transport endpoint pools are thread safe - Enqueue TX events to the correct vpp thread in the builtin client - Use transport proto in transport connections instead of session type Change-Id: Id13239a206afbff6f34a38afa510fe014e4b2049 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2017-07-27ping: fixing wrong value when there are worker threadsMohammed Hawari2-9/+21
- the echo_reply_node is now notifying the cli process on the main thread/vlib_main - the timestamp for the icmp reply is now acquired in the echo_reply_node and not in the cli process to avoid an off by 10ms error (see 【vpp-dev】delay is error in ping with multi worker thread) Change-Id: I21d37002b0376b4f2ccab08d8f04c2f2944b9b39 Signed-off-by: Mohammed Hawari <mhawari@cisco.com>
2017-07-27Fix interface reuse when running multithreadedDamjan Marion1-4/+12
Node function pointer was not set on all node runtimes causing crash if new interface is different type. Change-Id: I4661fe883befc6cd3fc6dfc14fd44f6fa5faf27c Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-07-27Thread safe internal buffer managerDamjan Marion4-9/+18
Change-Id: I45845b952aa42a854e1c2c396b85f905de987020 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-07-27vhost: debug vhost-user command needs better error checking on the syntax ↵Steven1-5/+26
(VPP-916) The syntax for debug vhost-user is debug vhost-user <on | off> However, currently the code does not reject the invalid command such as below debug vhost-user debug vhost-user on blah debug vhost-user off blah The fix is to enforece the correct syntax and reject the command when invalid option is entered. Change-Id: I1a04ae8ddb6dd299aa6d15b043362964e685ddde Signed-off-by: Steven <sluong@cisco.com> (cherry picked from commit 6a4de2764d9e6cadf36af824dddb3f33c2d6dc7e)
2017-07-27Use relative path to vpp.service.Thomas F Herbert1-1/+1
This change is necessary to avoid breaking builds from source rpm. JIRA: VPP-498 Change-Id: I876572ff75f88e22bf8012cabb1bde7e6d3c925a Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-07-26Fix lisp udp checksumFlorin Coras1-6/+18
Change-Id: I16c3f5a97c45e504eec94ce131e854d7da9cd0e3 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-07-26VPP-905: Wrong define used in function start_workers.JingLiuZTE1-1/+2
Change-Id: I6a5faebb63e9360cebfcfb1bc3f3c0eb6b15e937 Signed-off-by: JingLiuZTE <liu.jing5@zte.com.cn>
2017-07-2617.07 Release NoteNeale Ranns1-0/+64
Change-Id: Iffbfffac1c508b000451e9f0e0b688d80785f7f5 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit f4f635e7c05a4430e834a725f611cb83a9179146)
2017-07-25Add sample config of bonded interface in startup.conf templateJohn Lo1-0/+10
Change-Id: I3985befbdd2a1a1a0e9473095034d0da7e5c32ed Signed-off-by: John Lo <loj@cisco.com>
2017-07-25Cleanup/refactor session layer codeFlorin Coras17-994/+1115
Change-Id: Ica99e8cb919fca6b069c37c969d60e8ccc2c6bf9 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-07-25SANT: fib_table unlock (VPP-918)Matus Fabian2-1/+11
Change-Id: Ie0ad3671e3f4b55cd0f14601b6fed9ee2a1cbec0 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-07-24Update CSIT tests 170626 -> 170724Jan Gelety1-1/+1
- update of CSIT operational branch to be used for VPP-patch test Change-Id: I5837921208bfdfe604c187c103e78b0924d802b9 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2017-07-24SPAN:add l2 mirrorEyal Bari12-171/+606
added span feature nodes for l2-input / l2-output Change-Id: Ib6e0ce60d0811901b6edd70209e6a4c4a35cd8ff Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-07-23Improve L2 Input/Output Feature Infrastructure and UsageJohn Lo16-339/+160
Simplify L2 output feature infra to unify with L2 input feature infra using the newly improved feature bitmap mechanism. Updated all L2 features to use the more efficient infra functions. Change-Id: If8f463826b0af0717129befe92a27ea8cfc40449 Signed-off-by: John Lo <loj@cisco.com>
2017-07-23Atomic bucket lockDave Barach2-41/+58
Change-Id: I84908b9ad30d7555024e98b69ed37b111f31c27a Signed-off-by: Dave Barach <dbarach@cisco.com>
2017-07-21Improvements to tcp rx path and debuggingFlorin Coras13-183/+612
- Increment rcv_nxt for fin packets - Call tcp_segment_rcv only if buffer has data - Parse rcv opts before deleting half-open connection - Fix initial rcv_wnd - Improved event logging Change-Id: I9b83c04f432c4cec832c480b03e534deff02c3b1 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-07-21SNAT: in2out translation as an output feature hairpinning (VPP-913)Matus Fabian6-103/+403
Change-Id: I3790739683c6090ffb2aefb4758bd4275856c09a Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-07-20acl-plugin: assertion failed at hash_lookup.c:226 when modifying ACLs ↵Andrew Yourtchenko1-0/+11
applied as part of many (VPP-910) change 7385 has added the code which has the first ACE's "prev" entry within the linked list of shadowed ACEs pointing to the last ACE, in order to avoid the frequent linear list traversal. That change was not complete and did not update this "prev" entry whenever the last ACE was deleted. As a result the changes within the applied ACLs which caused the calls to hash_acl_unapply/hash_acl_apply may result in hitting assert which does the sanity check. The solution is to add the missing update logic. Change-Id: I9cbe9a7c68b92fa3a22a8efd11b679667d38f186 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit 45fe7399152f5ca511ba0b03fee3d5a3dffd1897)
2017-07-20Fix coverity issue introduced with IP checksum offload commitDamjan Marion1-3/+3
Change-Id: Ib5ad1369678389534426902ce698bccf7a6d9ec2 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-07-20Prevent double freeing of first segment manager.Dave Wallace1-1/+2
Change-Id: I27d7cb4c4e142f29a0c3c3ff85dd1f581970abfc Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-07-20Enable build from dist tarball independent of git.Thomas F Herbert1-6/+11
This is necessary for downstream builds from source rpm. JIRA: VPP-498 Change-Id: I30ea51a19b153dc35ececbbca79b940fe4e3bc8a Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-07-20SNAT: in2out translation as an output feature (VPP-903)Matus Fabian7-38/+664
in2out translation as an output feature on the outside interface (postrouting) Change-Id: I32c0311be09bdf102b9a0885b8b89c7588cb558f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-07-20L2FWD:move vec_validate out of access functionEyal Bari2-2/+9
Change-Id: Id9737b6aa2b6fe3032f4627dfdbd2ea728cc3fb1 Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-07-19Add a bihash prefetchable bucket-level cacheDave Barach11-44/+329
According to Maciek, the easiest way to leverage the csit "performance trend" job is to actually merge the patch once verified. Manual testing indicates that the patch improves l2 path performance. Other use-cases are TBD. It's possible that we'll need to back out the patch depending on what happens. Change-Id: Ic0a0363de35ef9be953ad7709c57c3936b73fd5a Signed-off-by: Dave Barach <dave@barachs.net>
2017-07-19Fix IP checksum offload metadata setupDave Barach1-2/+12
Change-Id: Idf4f8b02337551670d6b7ce1a03799de9c53d19a Signed-off-by: Dave Barach <dave@barachs.net>
2017-07-18make test: improve console output messagesKlement Sekera1-3/+3
Remove the word derp and replace it with a proper, more gramatically correct message. Change-Id: I04fd44cc67dace1a31ca48fc8ce67b246162ba79 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-07-18FIB path preferenceNeale Ranns13-62/+647
Paths are given a preference, lowest value is 'best'. Only paths that are up are up contribute to fprwarding - that's unchanged. What's new is that of the path's that re up only those that have the best preference contribute. A poor man's primary and backup. It's not true primary/backup function because the FIB must converge before the lower preference paths are used. Change-Id: Ie4453c4a7b1094c6c2b51fe1594b8302103bb68e Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-07-18DHCP client option 61 "client_id"Neale Ranns6-4/+53
the existing seeting of client_id to a VPP version number was unused and so overridden Change-Id: If9ebea936336f1fcca8d07e67186c95f8f8f0ccd Signed-off-by: Neale Ranns <nranns@cisco.com>