summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-03-11session: fix ct that match global table entriesFlorin Coras3-2/+26
Change-Id: I42addcd413094a8b6e9b2858ba2a292bd295ec82 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-11VPP-1486: stat segment file descriptor leakOle Troan1-0/+3
Close the mmap file descriptor at first opportunity. Change-Id: If8faa1de0a57dc7d8abb3eed97861813b841bd92 Signed-off-by: Ole Troan <ot@cisco.com>
2019-03-10Perf tune get_frame_size_infoDave Barach3-3/+14
It turns out that for scalar sizes 0..24, frames are always the same size. That range includes all current use-cases - and then some - so get rid of the hash table. Old code preserved under #ifdef VLIB_SUPPORTS_ARBITRARY_SCALAR_SIZES. Change-Id: Ic005c7143c9639f77d1a0fadd2fc0e90dccb68c1 Signed-off-by: Dave Barach <dbarach@cisco.com>
2019-03-10vcl: update buf if whole buf cannot be done at oncewuzhouhui1-0/+1
Change-Id: I0d56d2cee012b46da848362f322d6f246f8bf4c2 Signed-off-by: wuzhouhui <wuzhouhui14@mails.ucas.ac.cn>
2019-03-09SVS: cleanup default route on SVS disableNeale Ranns1-0/+5
Change-Id: Ie0680330dd619cfdcb72ae8fb7e2463f732cff8c Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-08tcp: fix rcv_wnd computationFlorin Coras1-1/+1
Change-Id: I3cecffae2e30233d4725bd3eaf5ff4a8ff194fae Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-08session/tcp/vcl: fixes and optimizationsFlorin Coras6-22/+56
Change-Id: Idc7dfe743399dd8dee0f6b3ec83f194f3fca580b Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-08tcp: fix window probes in fin-wait-1Florin Coras2-15/+10
Change-Id: Idf060f385f4d9b2f42fdab6a1d372727beb8b19e Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-08session: reorganize session fieldsFlorin Coras3-43/+25
Change-Id: I7f3b015ea6750c9773e4285bb63b0d44fa2177b9 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-03-08updates now that flags are supported on the APINeale Ranns2-7/+0
Change-Id: I9c45f390a6454c114f12f9c46c3a93fcecffa73f Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-03-07parse ethernet header in ct6_in2outDave Barach2-8/+30
fix a debug CLI scripting bug: cp_ip6_address_add_del_command_function ate any subsequent commands, yielding indigestion. Change-Id: Iaca7bed5687759da36ae91dc658e758549b71796 Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-07vpp_papi: Adjust aenum import for python3.Paul Vinciguerra2-4/+11
The stdlib introduced IntEnum in python 3.4 and IntFlag in python 3.6. Change-Id: I3ac278a9d5a97eefa9fc4f1491f0cd030e40c3b2 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
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>