summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-03-07Honor vnet_rewrite_data_t data_bytes == 0Dave Barach1-1/+15
Avoid the cache miss consequences of spraying [functionally harmless] junk into un-prefetched rewrite space. As things stand, several tunnel encap rewrites set rewrite data_bytes = 0, and take a performance hit due to unwanted speculative copying. Should be performance-neutral in speed-path cases, which won't execute the added check. Change-Id: Id83c0325e58c0f31631b4bae5a06457dfc7ed567 Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-07Fix typo in feature arc constraintDave Barach1-3/+3
Also, increase ip6 address field width in "show ip6 conn verbose" output Change-Id: If7d1bcd439d94a22d1f1c6c1298cb30aba13d0a2 Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-07assign flood_class to vnet_sw_interface_t template in subif api handle functionJoe Zhou1-0/+2
Change-Id: I352f4a4adcf8771c21530657efcaecb532416612 Signed-off-by: Joe Zhou <zhouyoucn@qq.com>
2019-03-07Remove local REPLY_MACRO so that socket transport works.Ole Troan4-133/+8
memif, lacp, nsh and cdp used local REPLY_MACROs. Remove and use those in api_helper.h Change-Id: Ib01d6ae5cff0b6f1cef90996a54b3177f0c53463 Signed-off-by: Ole Troan <ot@cisco.com>
2019-03-07ipsec: cli bug fixesKingwel Xie2-5/+9
1. fix wrong assignemnt of lik/rik 2. keys initialized to 0, to avoid using random data in stack. could cause memory overlapped then crash 3. show sa->id in hex format Change-Id: Id0430aa49bb55c27cee4f97f8c0e4ec87515dcd2 Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com>
2019-03-07API: Add python2.7 support for enum flags via aenumOle Troan3-5/+8
Change-Id: I77a43bfb37d827727c331cd65eee77536cc15953 Signed-off-by: Ole Troan <ot@cisco.com>
2019-03-07BIER: trace then drop. MPLS: trace the dropsNeale Ranns2-3/+46
Change-Id: I952e6aec6487270a79c4d92cfe828cc55d42d536 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-07gdb-helper: add gdb_show_tracesKingwel Xie1-0/+74
gdb_show_traces() dumps buffer traces. Ease gdb debugging when vpp crashed... Change-Id: Ib24314832386ee4defc2d31cbb4c05d293fb3338 Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com>
2019-03-07classify: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar3-26/+21
Change-Id: I01730ec9eb8033074c8710daf0848c3573293aeb Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-07policer: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar2-26/+23
Change-Id: I88d2632fa451dbafbc212dd142a67fe5ec4cd610 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-07vlibmemory: coverity woesSteven Luong1-1/+1
Coverity complains about resource leak after open when fd gets 0 with below warning. off_by_one: Testing whether handle tfd is strictly greater than zero is suspicious. tfd leaks when it is zero. It is right. 0 is a valid fd. -1 is not. Change-Id: I22c2eb75b99bb6209921b9f874190cbbdf10e6ce Signed-off-by: Steven Luong <sluong@cisco.com>
2019-03-07Add VAT support for LBHongjun Ni2-60/+179
Change-Id: I61d8c35f48a059968909fc8523bd313fc4799389 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2019-03-07session/tls: remove unused t_app_index fieldFlorin Coras3-7/+0
Change-Id: Idbf7f3a57dc399798b8dba9463daeb7d66470ab1 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-07ipsec: ipsec-if optimizations & bug fixesKingwel Xie2-254/+309
1. changed to vlib_buffer_enqueue_to_next 2. error counter fixes; stats added to last_sw_if_index when interface changed 3. udp-encap support Change-Id: I70b0814aa37181fea4d70fa3c96c608adb5afe49 Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com>
2019-03-07session: use transport custom tx for app transportsFlorin Coras5-24/+31
Change-Id: I675f7090fa6b2ffdfb4ee748df858bfb7e39ce5a Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-07session: cleanup instances of deprecated io evtsFlorin Coras3-7/+7
Change-Id: Iad119e05ae5e570fbfcf66747c95822cee647c99 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-06sctp chunk_len fixSirshak das1-2/+4
total_length_not_including_first_buffer should only be used when VLIB_BUFFER_TOTAL_LENGTH_VALID is set, if not it uses stale data from previous session_chain_tail calculation to set data/chunk len. Change-Id: I9802341e522cf9b18d0aef817f0047b76945782e Signed-off-by: Sirshak Das <sirshak.das@arm.com> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
2019-03-06session: use session index instead of fifo for evtFlorin Coras10-105/+73
Avoids derefrencing fifo pointers whose segments could have been unmapped. Change-Id: Ifb0b7399e424f145f3f94b769391a6f4e31bb4e6 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-06udp: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar5-27/+25
Change-Id: I2b324c77df2685a0bdfb617fb484022daf017d0b Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06session: use vpp to switch io events for ct sessionsFlorin Coras16-606/+257
Instead of allocating pairs of message queues per cut-thru session and having the applications map them, this uses vpp as an io event message switch. Change-Id: I51db1c7564df479a7d1a3288342394251fd188bb Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-06ipv6 connection tracking pluginDave Barach9-0/+1706
A security feature: drop unsolicited global unicast traffic. Change-Id: I421da7d52e08b7acf40c62a1f6e2a6caac349e7e Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-06tcp: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar5-109/+83
Change-Id: Ifd9fa30eed343e2c5d40582b3e3aa589b070637d Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06ipsec: esp-encrypt and esp-decrypt cleanupDamjan Marion4-558/+447
Change-Id: I1e431aa36a282ca7565c6618a940d591674b8cd2 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-03-06GBP: use sclass in the DP for policyNeale Ranns33-693/+207
Change-Id: I154e18f22ec7708127b8ade98e80546ab1dcd05b Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-06interface: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar3-34/+32
Change-Id: Ib92e338d0becbfbc38e6b9f34f262df76b63eead Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06cop: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar4-21/+9
Change-Id: Ic0c9c50376ceb0ff4e2d5e52e13b6506e68adf4b Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06vxlan*: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar5-80/+85
Change-Id: Ide23bb3d82024118214902850821a8184fe65dfc Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06vmbus: fix bug that breaks multiple netvsc vdevsMatthew Smith1-2/+2
VPP supports two DPDK drivers for managing netvsc devices on Azure/Hyper-V. The new netvsc PMD looks a lot like other PCI-based PMDs but it requires recently added kernel support (>=4.17). The older vdev_netvsc is an abstraction that manages the mlx4 VF and tap device underlying the netvsc interface using the failsafe PMD. Distros with older kernels (e.g. RHEL/CentOS 7.x) have to use vdev_netvsc. At startup, netvsc devices are processed and an attempt is made to initialize them for management by the netvsc PMD. If that fails, then vlib_vmbus_bind_to_uio() returns early and the device can be initialized for management by vdev_netvsc. The operation that is supposed to fail if the netvsc PMD cannot be used is registration of the netvsc device type ID with the uio_hv_generic driver. This operation is attempted exactly once so it does not fail for netvsc devices processed after the first one and they end up in a state where they cannot be initialized for use by vdev_netvsc. Only unset uio_new_id_needed if uio_hv_generic registration succeeds. Change-Id: I6be925d422b87ed24e0f4611304cc3a6b07a34fd Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2019-03-06span: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar2-30/+17
Change-Id: I5c671d8af8d528eae625001d4755db8ef61f00b2 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06geneve: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar5-57/+49
Change-Id: Ie7b201b2742e0051b249acc011f609905bc178c8 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06ipip: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar2-11/+9
Change-Id: I9c05225b71b60dc2b419a96daeb71d89757aef98 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06sctp: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar6-452/+449
Change-Id: I7248a94977fe11bbe58db53d7ca8ae8c582e7305 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-06ip: coverity woesSteven Luong1-4/+4
coverity complains about logically dead code for the statement if (error) because error was assigned to 0 prior to the check. I believe error was meant to get the return status of the call vnet_punt_socket_add. Change-Id: I794167493f63cb898d3618c2c28817823f46b765 Signed-off-by: Steven Luong <sluong@cisco.com>
2019-03-06vlib: coverity woesSteven Luong1-2/+1
Remove logically dead code to keep coverity from complaining Change-Id: If27d6684d19ab3c8886732a67922c86e5f0b3554 Signed-off-by: Steven Luong <sluong@cisco.com>
2019-03-06IPSEC: tunnel encap/decap dual loop speedupsNeale Ranns3-89/+255
baseline: ipsec0-tx 1.27e1 ipsec-if-input 8.19e1 this change: ipsec0-tx 6.17e0 ipsec-if-input 6.39e1 this also fixes the double tunnel TX counts by removing the duplicate from the TX node. Change-Id: Ie4608acda08dc653b6fb9e2c85185d83625efd40 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-06GBP: format EPG retention policyNeale Ranns1-1/+12
Change-Id: I17826cfa9a27dc241e07988bf0bbaf9eca9ae525 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-06GBP: learn from ARP and L2 packetsNeale Ranns9-19/+69
Change-Id: I8af7bca566ec7c9bd2b72529d49e04c6e649b44a Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-06punt.c -- coverity woesSteven Luong1-9/+0
Coverity complains about identical code is executed for if and else branch. Clean them up by removing the useless code. Change-Id: Ie53f1dff055440ab2c3c3d2ea91edb1e50204b38 Signed-off-by: Steven Luong <sluong@cisco.com>
2019-03-05ipsec: cleanup, remove unnecessary code,Kingwel Xie5-13/+7
ipsec_proto_main moved to ipsec.c fix missing '\0' of backend name Change-Id: I90760b3045973a46792c2f098d9b0b1b3d209ad0 Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com>
2019-03-05VXLAN-GBP: decap checks src,dst&VNI for unicast, then checks only dst&VNI ↵Neale Ranns2-71/+62
for multicast Change-Id: I17caf3c5a2060de497c44655b66a15a2007f716b Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-05GBP: format include EPG indexNeale Ranns1-1/+2
Change-Id: I1789a4ea44cfc6a11ad8750074ffcf14c4ab8712 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-05bier: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar4-16/+10
Change-Id: I561591c7d31ec66dfa0a1d7ef66bcf1d0c70f07c Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-05qos: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar5-703/+735
Change-Id: I4dc77979594de0b6a21644ea0a982085c6386010 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-05mpls: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar6-55/+31
Change-Id: I8c5f7cda655e3343d50a96d714796ea4255588b6 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-05GBP: per-group EP retention policyNeale Ranns8-66/+55
Change-Id: I3ed4e2e92f74f15b07fcd3e7fbc3fa8718d5249d Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-05gre: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar3-19/+25
Change-Id: I0f6b9f306f2323216ba64b694e8fdfa116e6cc9c Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-03-05L2: ARP term - learn but don't send response to GARPsNeale Ranns1-0/+3
Change-Id: I766767d27f37493dc9f2bde1297c1b620cd1e321 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-04IPSEC: script to bounce IPSEC traffic through a pipe to test encrypt and decrpytNeale Ranns2-0/+99
Change-Id: I262a9412951b5df616920a8fad16c61eae96d0cc Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-04Fix 2x overconsumption of debug cli input bugsDave Barach2-9/+20
Change-Id: I658489dc9cf437ff43d9c69a896c9fe4e01ec38e Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-04test framework: add factory function and default parametersOle Troan1-0/+2
This is the first step to be able to remove all the API message wrappers in vpp_papi_provider.py. This allows to remove all functions that do not override parameters (different from zero), and a separate dictionary for messages requiring different defaults. The general requirement is that all new tests should use named arguments directly. Not positional arguments through the wrapper. Note when removing functions, the calls in vpp_papi_provider wrappers do not necessarily follow message order. Change-Id: If64916c07f8622c138db3a9d7c4a98b93a058e68 Signed-off-by: Ole Troan <ot@cisco.com>