aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-03-02Ensure sw_if_index to node mapping for L2 output path is only done via ↵Andrew Yourtchenko10-88/+53
l2output_main.next_nodes Before this commit, several output features that happen to be the last in the list of features to be executed, send the packets directly to <interfaceName>-output. To do this, they use l2_output_dispatch, which builds a list of sw_if_index to next index mappings. When interfaces are deleted and the new interfaces are created, these mappings become stale, and cause the packets being sent to wrong interface output nodes. This patch (thanks John Lo for the brilliant idea!) adds a feature node "output", whose sole purpose is dispatching the packets to the correct interface output nodes. To do that, it uses the l2output_main.next_nodes, which is already taken care of for the case of the sw_if_index reuse, so this makes the dependent features all work correctly. Since this changes the packet path, for the features that were always the last ones it has triggered a side problem of the output feat_next_node_index not being properly initalized. These two users are l2-output-classify node and the output nodes belonging to the acl-plugin. For the first one the less invasive fix is just to initialize that field. For the acl-plugin nodes, rewrite the affected part of the code to use feat_bitmap_get_next_node_index since this is essentially what the conditional in l2_output_dispatch does, and fix the compiler warnings generated. Change-Id: If44457b1c1c3e197b78470c08555720d0872c6e5 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-02-27Clean up the L2 interface configs when creating the interfacesAndrew Yourtchenko1-0/+10
Without the cleanup in the L2 input/output configs, the creation of an interface with sw_if_index belonging to a previously deleted interface will use the stale vlan tag push-pop configuration from that interface, resulting in loss of connectivity when the host receives tagged packets but expects untagged ones. Change-Id: Ic186390ef3a41277f57847ed2962848b98379092 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-02-14Update default Vagrant box to Ubuntu 16.04, VPP-616Dave Wallace3-27/+40
- Hand merge of ed0e49c5 and 46f133d5 into stable/1701 Change-Id: Ib7260f07d22e546c6a92fb713b61b7e5edf247c9 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-02-09Plugin Makefiles did not install headers - VPP-631Keith Burns (alagalah)1-1/+1
Change-Id: I9f6fd1a63a9dfa2d2aa386cf0a3c2479525bbcec Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2017-02-03vhost-user: fix missing speculative enqueue unwindSteven1-0/+4
Running trex in a VM with a bad config, trex sent a bogus pack from the VM to the Virtual interface. It caused a crash. Change-Id: I64d0197b444265553ab4c24f21e6a962e89cb587 Signed-off-by: Steven <sluong@cisco.com>
2017-02-03Fix make test scapy python patch issue, VPP-615Dave Wallace1-0/+1
Change-Id: I1e6798905f0049c793224a2c880f3b2cfadcf1e7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com> (cherry picked from commit 6f692d6e5a8ffc920a728372ef773199bc5466c0)
2017-02-02Fix issue with apt-get update not being run on Ubuntu 16.04Ed Warnicke1-1/+1
Change-Id: Ic05b86c4ea9b62afbf03a2a36c4a2ef45f5c140b Signed-off-by: Ed Warnicke <eaw@cisco.com> (cherry picked from commit eb82e7f27c6f8fe84838e6e2914579825c455632)
2017-01-26span: tx functionalityPavel Kotucek1-2/+2
span-output (tx) was enabled on wrong arc_name Change-Id: Ic21dfaec35c975de79abec66421b353637ac9394 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2017-01-24Fix PAPI async responseWojciech Dec1-1/+1
Previous changes forgot to return the decoded result Change-Id: I4eb27802eb2672532d856d9b9671ef806374bcd0 Signed-off-by: Wojciech Dec <wdec@cisco.com>
2017-01-20Fix plugin version numbersv17.01Damjan Marion3-3/+3
Change-Id: Ie485e9dfa04747b5e4ba93fdeabc5802dc001d31 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-20vpp-python-api deb packaging - use easy_install to install the python apiGabriel Ganne3-0/+14
(cherry picked from commit 5a68debd8173a487dbd67b3e574d962308c91bcc) Change-Id: Iabad73d6092b4561ba9d4d22a057bb5871d850a6 Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
2017-01-20Fix issue in rpm versioning for release buildsDamjan Marion1-1/+1
Change-Id: I851d472c0838d56ca571f9f9e3ca412ac2107c4e Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-20Release notes for release 17.01Damjan Marion1-1/+72
Change-Id: I99c0898bb0cb99e1b2a28463245031e74afd401b Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-20Python API: Missing locking of results data structure.Ole Troan1-84/+219
The wrong assumption that the GIL combined with CPython's "mostly" thread safe assurance does not hold. The combination of a slow event handler for notification and calling the API at the same time let to contention on the results data structure. Added suitable locking. Also added an atexit() to attempt a VPP disconnect on shutdown. Also: lots more comments, docstrings, duplicated code removed. Some of the problem here was a disagreement between caller and author as to how the API should be used; the comments should help. Change-Id: I0cb7d0026db660ec141425c5ad474f14bacea36e Signed-off-by: Ole Troan <ot@cisco.com> Co-Authored-By: Ian Wells <iawells@cisco.com> Signed-off-by: Ole Troan <ot@cisco.com>
2017-01-18LISP: Fix fwd adding, VPP-607Filip Tehlar1-1/+6
Change-Id: Ie48209ba6d9aab0c5cfbd7b3cce4114cf88f952c Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2017-01-18Fix crash on deleting activated vhost-user - VPP-603Wojciech Dec1-3/+3
Vhost-user pool getting freed prematurely Change-Id: I90b70889d2e5a01203dc7679583b7c9eff65a374 Signed-off-by: Wojciech Dec <wdec@cisco.com>
2017-01-17Update CSIT tests 161218 -> rls1701-170115Jan Gelety1-1/+1
- update of CSIT operational branch to be used for VPP-patch test Change-Id: I00c83fa1db7006f600207306d320628ed3075854 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2017-01-16DHCPv6 Proxy; fix crash when DHCPv6 prxy is not configured and client packet ↵Neale Ranns1-1/+5
is received Change-Id: I0250acdee803545b8923549e2099863a95544691 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-01-10Account for pool realloc when importing FIB entries during VRF exportNeale Ranns1-4/+12
Change-Id: I8ec6d53fa9c0790f85802663f70a6b3630239f8d Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-01-09Fix ARP on unnumbered interfaces (VPP-583)Neale Ranns1-2/+15
Change-Id: Iea1e2c31c016c3bb6344f73173d082a2c548ffee Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-01-09Fix disable ip6 interface (VPP-584)Neale Ranns1-12/+3
Change-Id: I73e966f9afe866e7215fc2e57daecc4531381d92 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-01-08Added basic tests for multicast vxlan tunnelsEyal Bari2-40/+206
unicast flood test - test headend replication multicast flood test - test flooding when a multicast vxlan tunnel is present in BD multicast receive test - verify that multicast packet are received on their corresponding unicast tunnels and that unmatched packets are dropped all tests run after adding and removing 200 mcast tunnels to test stability Change-Id: Ia05108c39ac35096a5b633cf52480a9ba87c14df Signed-off-by: Eyal Bari <ebari@cisco.com> (cherry picked from commit c4aaee11468aa5ed7af01d0747d912493cff002d)
2017-01-05Fix uninitialized stack local, VPP-581Dave Barach2-0/+5
Sporadically messes up the client message allocation ring, by setting c->message_bounce[msg_id] non-zero. A day-1 bug, made blatantly obvious by the python API language binding for no particular reason. Change-Id: I11084dd884622e7b44bdabb922466c4d07138235 Signed-off-by: Dave Barach <dave@barachs.net>
2017-01-04FIB memory leaks (VPP-578)v17.01-rc2Neale Ranns6-24/+48
1) vec_free the fe_srcs of a fib_entry_t when the fib_entry_t is itself reed 2) in the load-balance fixup if a drop path is required add this to a new vector of next-hops 'fixed_nhs'. This vector is managed by the load-balance function. The caller continues to manage its own set. The function is now const implying that the caller is safe to assume the next-hops do not change. Change-Id: I0f29203ee16b9a270f40edf237488fa99ba65320 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-01-03vxlan fix mcast tunnel deleteEyal Bari2-23/+27
Change-Id: I15f7ff1e957718e808bfad811895deaacb85d2a3 Signed-off-by: Eyal Bari <ebari@cisco.com>
2017-01-03LISP: fix EID addition (VPP-577)Filip Tehlar1-2/+5
Change-Id: I32f61ab89598a7911df3d0d8f45de1302af8aa6a Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2017-01-03LISP: fix fwd entry addition (VPP-576)Filip Tehlar1-1/+1
Change-Id: Ibdc9ad21cc53cf0a6d571a3f913038d61d9282a1 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2017-01-03VPP-574: fix the MACIP ACLs blocking ARP trafficAndrew Yourtchenko1-0/+47
The initial assumption was that the MACIP ACL classifier tables would be applied after the classification of the traffic based on the ethertype, it turned out to be untrue, but the fix in the code did not happen. Add the ethertype to the mask, and the logic to create the ACL classifier tables permitting the ARP ethertype with the correct payload. Change-Id: I70236a8a723970c662ddaef6bc9fce93d2e630c1 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-01-03VPP-574: fix VPP hang during security group configuration on a suspended VMAndrew Yourtchenko1-0/+4
The unix connect() in vhost-user driver in VPP is blocking, and a non-expedient accept() on the other side causes the entire VPP to hang. Solution: set the nonblocking flag for the socket fd before calling connect(), and set the socket back to blocking after the accept() succeeds. Change-Id: I2d535ea9b95a92922d305d79a8d860062c95faf4 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-01-03SNAT: fix out2in ICMP worker lookupMatus Fabian1-0/+7
Change-Id: Ifce17a450a06c26670d474b0f774f2504843f221 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-01-02ioam: fix Coverity warning (VPP-570)Vengada1-1/+1
Fix Coverity warning of uninitialized variable. Initialize outer_fib_index to zero (vxlan_gpe_test.c) Change-Id: If39d48c3906784c43c5af3e9e01ed9a5d5631d6e Signed-off-by: Vengada <venggovi@cisco.com>
2016-12-24Merging all ioam plugin libraries to single libraryAkshayaNadahalli10-188/+142
Change-Id: I33a646ba45848c7400df4271e4933e28e62c9ad7 Signed-off-by: AkshayaNadahalli <anadahal@cisco.com>
2016-12-23SNAT: fix 'show snat verbose' bug - format vector as %vMatus Fabian1-3/+3
Change-Id: Ia829da43a273c89dee47b32250ab032d992193cd Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-12-22SNAT: Remove the oldest translation fix (VPP-568)Matus Fabian4-8/+41
Fixed bug and add test. Change-Id: I60fbec48abd9d9cb86be1bd1cdbb7d16f9f93c3e Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-12-21Change default branch in .gitreviewv17.01-rc1Damjan Marion1-0/+1
Change-Id: I061e4e59698407c9f96930d578cafd552c717861 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-21VPP-470: Introduce VxLAN-GPE as transport for iOAM.Vengada Govindan11-57/+926
This is the second of the two commits. This commit introduces VxLAN-GPE transit functionality. Change-Id: I12f13e00f456df0047f2b7a0737addfeb683c420 Signed-off-by: Vengada Govindan <venggovi@cisco.com>
2016-12-21Support multiple VXLAN tunnels with same mcast dstEyal Bari2-74/+121
Support multiple vni's with the same group(multicast) address. Implemented by sharing local adj. and rewrite among tunnels. Change-Id: I8ca036b87af65dd6a8f1aff7da1855f72b4c8f4b Signed-off-by: Eyal Bari <ebari@cisco.com>
2016-12-21Fix coverity issuesMarek Gradzki2-6/+8
Change-Id: I7707a42321df2c73e5414926d4000f8672ecfaf3 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-12-21fix 'show trace' bug - format vector as %vKlement Sekera1-1/+1
Change-Id: I1b5e633b92674c6c7118eaa6ff7be3d824a186c3 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-12-21Add missing variable definitions to java VPP APIMarek Gradzki1-0/+4
Change-Id: I121b26f4d566417e7cb5ee1a021896dd7dc5599e Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-12-21vagrant: Fixing sudo related vagrant errorsRay Kinsella2-6/+9
The dpkg sudo trigger appears to want to run interactively despite the noninteractive debconf setting. This is a problem upstream for vagrant also, see. https://github.com/hashicorp/terraform/issues/9763 Incorporating the recommended fix to Vagrantfile from upstream https://github.com/hashicorp/terraform/pull/9783 Change-Id: I8da8522fc9e80fc3bd268b347a786054ad019170 Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
2016-12-21Python API: Incorrect error for empty VLA list.Ole Troan2-4/+11
Change-Id: Ie3e9a54ca23af6b9ee43615f59a48cb05e3906d4 Signed-off-by: Ole Troan <ot@cisco.com>
2016-12-21vagrant: updated Vagrantfile to use rsyncRay Kinsella2-58/+16
Replacing problematic nfs & git clone, with a simplier rsync. Change-Id: I26a95bd81b7fbf6ea0179cd62361e0902f2d22ed Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
2016-12-21aarch64 compatibilityChristophe Fontaine8-10/+100
- lb plugin: compatibility for non x86 platforms. - Add vector_neon.h to support simd instructions, especially 'u16x8_zero_byte_mask' used in "vnet/vnet/ip/ip4_source_and_port_range_check.c" Change-Id: I395546b0e2d5748e73daffa51269a200ef8d1235 Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-12-21classify: add simple mechanism for automatic flow creation (VPP-338)Juraj Sloboda1-23/+5
VPP-338 Support wildcards in IPFIX flow configuration Change-Id: Ie5ab4f89d70153c3b15fc6bd8d97fa383ee842d9 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-12-21fix sample-plugin rpm packagingGabriel Ganne1-2/+2
Change-Id: I0f4d029fe16d1d272c8bbd5c380ba70a646ddb20 Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
2016-12-21make test: Add classifier - ip/mac/pbr casesSteve Shin2-0/+440
Change-Id: I9cdf022a48b2b63e7ce07f4f5322ffda28c08ff0 Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-12-20Always set start_of_ethernet_header in ethernet-input speed pathJohn Lo1-6/+10
The speed path of ethernet-input node is setting the packet context field start_of_ethernet_header for L2 only. This is also needed for L3 path because of IPv4 ARP processing which need to know the start of ethernet header of the incoming ARP packet. Change-Id: I98ee88c482f8536e4fccc0b8afcb8811d63f4435 Signed-off-by: John Lo <loj@cisco.com>
2016-12-20Decouple dependencies/assumptions in MAC changeNeale Ranns7-21/+35
Change-Id: Ic38d0e468da1ad5b56eefda471a5961146a1c372 Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-12-20VPP-525: multi-thread case binary API post-mortem dump AWOLDave Barach1-6/+9
root cause: blocking all signals in worker threads Change-Id: Ife0a5f04be0648fab84e493f203e79ba94890052 Signed-off-by: Dave Barach <dave@barachs.net>