Andrew Yourtchenko [Wed, 29 Aug 2018 15:23:03 +0000 (17:23 +0200)]
acl-plugin: VPP-1400: VPP may crash when performing ACL modifications on applied ACLs
The partition_split() did not increment the refcount when using a mask type index,
thus subsequent modifications potentially resulted in double frees and in the best case
immediate crash, in the worst case delayed crash in another place.
Introduce the lock_mask_type_index() and call it, move the mask type index
related functions closer to the top of the file.
Make the assignment of the new mask type indices
for the tuplemerge case to use the assign_mask_type_index().
Keep some debugs in case we need to investigate this further at some point.
Change-Id: Iae370f5cd92e1fe1442480db34656a8a3442dbc0
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Andrew Yourtchenko [Tue, 28 Aug 2018 20:37:47 +0000 (22:37 +0200)]
acl-plugin: fix the memory leak with colliding entries storage
Change-Id: I634971f6376a7ea49de718ade9139e67eeed48e5
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Matus Fabian [Mon, 27 Aug 2018 14:21:38 +0000 (07:21 -0700)]
NAT44: fix nat44_ed_not_translate_output_feature for multiple VRF (VPP-1404)
Change-Id: I44acc5aeff59dc25d18369e29618bbe39d30a1b3
Signed-off-by: Matus Fabian <matfabia@cisco.com>
(cherry picked from commit
f96d0a105d357a6b7bb4252b271fbcbab45bc9bd)
shubing guo [Mon, 13 Aug 2018 09:16:46 +0000 (17:16 +0800)]
VPP-1387:foreach outside address vector to find correct index when free outside address and port
Change-Id: Ie5452350a8ebe2c1b62085fcab50dbc0138d3ae2
Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
(cherry picked from commit
762a4938900abeedd42676ab2582fcceabdc07fa)
Yichen Wang [Wed, 29 Aug 2018 06:05:27 +0000 (23:05 -0700)]
vhost: Fix VPP crash when reloading VM with mixed-type ports [VPP-1406]
When VM is having mixed type of vhost-user and SRIOV ports, QEMU (RedHat
v2.10) will not send disconnect signal to VPP, and just gives the new
memory region directly. VPP is not able to handle new memory region
mapping without disconnect signal first, which will result in a SEGV.
The fix will handle the VM reboot scenario without explict disconnect
signal from QEMU.
The fix is to invalidate the avail, desc, and used pointers in the txvq
when the new memory regions are received. This is because these pointers
are not valid anymore with the new memory regions. In the input node, check
to make sure the avail pointer is valid and punt if not.
Change-Id: Ieb8b427b202f4442a58907dab1661d63a03650de
Signed-off-by: Yichen Wang <yicwang@cisco.com>
shubing guo [Fri, 10 Aug 2018 05:59:50 +0000 (13:59 +0800)]
VPP-1381: Fix the incorrect if condition when delete session for static mapping
-- The session should not be deleted when either ip address or port doesn't same with static mapping.
Change-Id: I09ab7379947654d2780a8c40c5340ce430541b12
Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
(cherry picked from commit
060c3a7e5a2d23189a8c6348e767cd2018a58dd6)
Matus Fabian [Tue, 14 Aug 2018 11:21:26 +0000 (04:21 -0700)]
NAT44: fix next_src_nat (VPP-1384)
Use rx_fib_index instead of sm->inside_fib_index for session lookup key.
Change-Id: I2d6cce5b9376fa8ac4d75a9bbfa8498be0fd1493
Signed-off-by: Matus Fabian <matfabia@cisco.com>
(cherry picked from commit
182e37e33f80cc65f3cf27b69e74d855dd858a7e)
Neale Ranns [Thu, 30 Aug 2018 13:12:27 +0000 (06:12 -0700)]
SR-MPLS: fixes and tests
- the FIB path takes a vector of type fib_mpls_label_t not u32 so the untype safe vec_add did not work
- write som eSR-MPLS tests
- allow an MPLS tunnel to resolve through a SR BSID
Change-Id: I2a18b9a9bf43584100ac269c4ebc286c9e3b3ea5
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
7c922dc404c2c0a2d67d53ca05db1c1ae1598f44)
Steven [Fri, 17 Aug 2018 16:44:08 +0000 (09:44 -0700)]
lacp: issue with slave interface admin up after it is added to the bond group [VPP-1409]
When the slave interface is admin up after it is added to the bond group,
lacp does not send lacp pdu's to the interface because its periodic timer
is not running.
The issue was the slave interface's variables got reset after the state
machines were initialized.
Change-Id: I2942556ce29a4acc97db3be40293e69bed7b6679
Signed-off-by: Steven <sluong@cisco.com>
(cherry picked from commit
bf21dc85053931bc597e0fab1112061aa60e986b)
Neale Ranns [Wed, 29 Aug 2018 10:05:17 +0000 (03:05 -0700)]
SR-mpls: do not pass empty label stack to fib
Change-Id: Ib1601d01a54296e72be3bbfa057fce965549b02b
Signed-off-by: Neale Ranns <nranns@cisco.com>
Matthew Smith [Wed, 29 Aug 2018 17:23:26 +0000 (12:23 -0500)]
backport mlx patch for DPDK >= 18.05
Memory allocation changed in DPDK 18.05. The mlx4 and mlx5
PMDs did not support using externally allocated memory.
The patch for mlx5 was generated by Mellanox. That patch was
modified to apply to the mlx4 PMD and tested on Microsoft
Azure.
Patches were originally tested and used with VPP master
(prerelease 18.10). Then backported to VPP stable/1807.
Change-Id: I883e0d796e59702731bec06c96210f0b134188db
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Neale Ranns [Wed, 29 Aug 2018 09:09:47 +0000 (02:09 -0700)]
Consolidate table->index conversion in fib-path CLI processing
Change-Id: I221cebddc45efbfdec428b7df2af96e2aedff2dd
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
77eb9073b178e8d4375bf0ef274246586f018ddc)
Neale Ranns [Mon, 27 Aug 2018 14:29:15 +0000 (07:29 -0700)]
Adjacency walks protected by 'walk in progress' flag
Change-Id: I3281f65f7dec792d56de48afb39efcc2fed8578b
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
30d53645ded750db3cc84f6fb4a97df038b143a1)
Neale Ranns [Mon, 27 Aug 2018 14:57:16 +0000 (07:57 -0700)]
MPLS: allow 16 as a valid output label
Change-Id: I7e6045514d58010258889cadd220b7efcef7c1b9
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
9514fab0423725fddcb0a4f5ec070ac8d2764ac8)
Neale Ranns [Wed, 22 Aug 2018 07:21:14 +0000 (00:21 -0700)]
IPIP and SIXRD tunnels create API needs table-IDs not fib-indexes
Change-Id: Ifaef196a24fa9b6924f2b9692318f69763cee5e1
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Ole Troan [Thu, 16 Aug 2018 20:08:49 +0000 (22:08 +0200)]
VPP-1392: VXLAN fails with IP fragmentation
Not only is it wasteful to send all fragments back through ip4-lookup, but
it doesn't work with tunnel mechanisms that don't have IP enabled on their
payload side.
Change-Id: Ic92d95982dddaa70969a2a6ea2f98edec7614425
Signed-off-by: Ole Troan <ot@cisco.com>
(cherry picked from commit
b3655e5592e3e8e48eb087632f3fa71915891a9f)
Florin Coras [Tue, 7 Aug 2018 07:51:33 +0000 (00:51 -0700)]
tcp_echo: fix server rx buffer
Change-Id: I7bb81259008f5d2da6e26405fd0774294181dc6b
Signed-off-by: Florin Coras <fcoras@cisco.com>
Yi He [Mon, 16 Jul 2018 05:52:00 +0000 (13:52 +0800)]
Fix undefined symbol: fformat_append_cr in vat plugins loading
Several test plugins report undefined symbol while being loaded
by load_one_vat_plugin. Fix this by adding VPP_API_TEST_BUILTIN
into CFLAGS for building these plugins.
Change-Id: I908720fd0d01da1ead30ba17027ba10358f6bdf1
Signed-off-by: Yi He <yi.he@arm.com>
(cherry picked from commit
d05ce97724ed8681e80c32a948564d0163994365)
Matus Fabian [Thu, 9 Aug 2018 12:15:19 +0000 (05:15 -0700)]
NAT44: fix bug in snat_interface_add_del (VPP-1380)
Should not enable nat44-hairpinning node in deterministic mode
Change-Id: I5790323a6842ee71a62c6c91c49166a2839eac12
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Dave Barach [Tue, 7 Aug 2018 16:46:18 +0000 (12:46 -0400)]
Fix dangling reference in l2fib_scan(...)
Deleting a bihash kvp frees the bucket's backing storage when the
bucket reference count reaches zero. l2fib_scan MUST check for that
condition, and stop scanning the bucket if it occurs. One of the L2
FIB extended "make test" vectors caused this issue 100% of the time.
Change-Id: I250bcc4c1518e16042120fbc4032227a759a602e
Signed-off-by: Dave Barach <dave@barachs.net>
(cherry picked from commit
28374cada08df61180044e24cb758fa570e73c9d)
Dave Barach [Mon, 6 Aug 2018 12:43:47 +0000 (08:43 -0400)]
fix dangling reference in foreach_key_value_pair
When the user deletes the last entry in a bihash bucket, the bihash
infra frees the bucket's backing storage. If this happens under
clib_bihash_foreach_key_value_pair - and the freed bucket happens to
be the bucket being traversed - the resulting dangling reference can
easily make the wheels fall off.
Simple fix: if (bucket-is-now-empty) double-break.
Change-Id: Idc44247a82ed5d0ba548507b4a53d4c8503ba8bb
Signed-off-by: Dave Barach <dave@barachs.net>
(cherry picked from commit
ca45ee73d7c49c7f659c5cd690d3403d440e50f9)
Neale Ranns [Wed, 1 Aug 2018 19:53:17 +0000 (12:53 -0700)]
loop counter to prevent infiinte number of look ups per-packet
Change-Id: I59235d11baac18785a4c90cdaf14e8f3ddf06dab
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Neale Ranns [Mon, 30 Jul 2018 18:59:22 +0000 (11:59 -0700)]
fix 'sh vxlan tunnels'
this receipe:
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
only works if there is more data following the registered command name.
So it is not so good for show commands...
Change-Id: I54249865a44526ade4b40e2d6207138a2d056e40
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
(cherry picked from commit
16be62e3846750b5b7921c0b4d6408477be434f7)
Ed Warnicke [Mon, 30 Jul 2018 18:52:54 +0000 (13:52 -0500)]
Update Release Notes for 18.07 Release
Change-Id: I2b58bca6d360badb4fd17022121e244aee5713b8
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
Rajesh Saluja [Thu, 26 Jul 2018 21:13:09 +0000 (14:13 -0700)]
Reverse the logic of flagging malformed packet in fragmentation code to allow padding
Change-Id: I051c137ae18fd436a798a12a56a9d12f8eaa2e08
Signed-off-by: Rajesh Saluja <rajsaluj@cisco.com>
(cherry picked from commit
1f895c9a40f446ca9f1b7803f350c70ebb3ad0fa)
Juraj Sloboda [Fri, 27 Jul 2018 09:23:14 +0000 (11:23 +0200)]
Fix memory leak in processing of ICMPv6 RA event (VPP-1360)
Change-Id: I7c3e5e91391b1c9b36e8ea8bacee9a107da1ae96
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Lukasz Majczak [Wed, 25 Jul 2018 14:58:13 +0000 (16:58 +0200)]
VPP-1359 Wrong vl_msg_id
Wrong vl_msg_id set in vl_api_stats_get_poller_delay_t_handler while reporting stats delay.
Change-Id: I7d6ad14359e41c717b976390c58e254e3602e0ff
Signed-off-by: Lukasz Majczak <lma@semihalf.com>
Jakub Grajciar [Tue, 24 Jul 2018 12:00:41 +0000 (14:00 +0200)]
avf: api fix
avf_create_reply returns software index for the new interface
Change-Id: I8a6b1a1985b072efafa24eb258b1f2cb1bea1110
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
(cherry picked from commit
4e6014fc9e8611eef16d9267151f1039ff00c190)
Eyal Bari [Sun, 22 Jul 2018 09:45:15 +0000 (12:45 +0300)]
fix vector index range checks (VPP-1353)
Change-Id: I63c36644c9d93f2c3ec6606ca0205b407499de4e
Signed-off-by: Eyal Bari <ebari@cisco.com>
(cherry picked from commit
cd30774fa9280736ffaea3e9a51948593e8eebc2)
Signed-off-by: John Lo <loj@cisco.com>
Matus Fabian [Mon, 23 Jul 2018 07:05:22 +0000 (00:05 -0700)]
NAT44: fix forwarding feature bug (VPP-1349)
Change-Id: I5009fcfde5c627d59dea3edda15486b9392134a2
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Neale Ranns [Fri, 20 Jul 2018 11:23:43 +0000 (04:23 -0700)]
QOS: mark/record fix feature ordering c-n-p error
vnet_feature_arc_init:215: feature node 'mpls-qos-mark' not found (after 'vlan-mpls-qos-record', arc 'mpls-input')
vnet_feature_arc_init:215: feature node 'ip6-qos-mark' not found (after 'vlan-ip6-qos-record', arc 'ip6-multicast')
...etc...
Change-Id: I22cb98d57e2480f5978fff315b77b9cbb6a9f9dd
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
(cherry picked from commit
8d753f906ecdd152af1e524919e99bd9ab45de46)
Neale Ranns [Mon, 16 Jul 2018 11:14:21 +0000 (04:14 -0700)]
QoS: marking and recording for MPLS and VLAN
Change-Id: Icec79aa9039d5d7835d311fde0b7c1a0c76c9eb1
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit
0809f6c0300f85cf5cf5d49df1aa8f1e2d080f6c)
Dave Barach [Sat, 21 Jul 2018 13:25:00 +0000 (09:25 -0400)]
Loopback tx: support multiple tx intfcs per frame
Can happen if code bypasses the per-interface output node, and
dispatches packets directly to the tx node.
Switch to vlib_get_buffers(...) ... vlib_buffer_enqueue_to_next (...),
quad/single loop coding pattern.
Change-Id: Ic0e5d3b9748230f4e545a54186e6e64e7a782bb1
Signed-off-by: Dave Barach <dave@barachs.net>
(cherry picked from commit
78451a6a660cd26a67d2284219f48878a2dfe2c3)
Neale Ranns [Tue, 17 Jul 2018 14:15:05 +0000 (07:15 -0700)]
ip4-input and ip4-input-no-checksum should be siblings
each edge/arc from these nodes must be the same.
Change-Id: Id5dace61bca0af71ad1df98583425226e81fd0de
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
(cherry picked from commit
8a03e4f97952d84e152f5b17d5325583604c4fd3)
Mohsin Kazmi [Tue, 17 Apr 2018 17:35:42 +0000 (19:35 +0200)]
gbp: Add support for ACL
Change-Id: I7513c41307e62068ab5d9739cac393675c6066f8
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
(cherry picked from commit
22b3b846822df2701bb6cb508fa4e023526e5717)
Eyal Bari [Wed, 18 Jul 2018 14:15:26 +0000 (17:15 +0300)]
qos mark/record: fix disable-sw_if_index range check
Change-Id: I2abb3ceebae3a32cee9aa2a999bd47c37719d3ac
Signed-off-by: Eyal Bari <ebari@cisco.com>
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
(cherry picked from commit
07f3586c5a9868ccee381af528de39b373d7720a)
Eyal Bari [Mon, 16 Jul 2018 16:18:56 +0000 (19:18 +0300)]
loopback:fix delete to check interface class
Change-Id: Ia563b279e85b5da93f79db5a2a4d9b8c04f5be99
Signed-off-by: Eyal Bari <ebari@cisco.com>
(cherry picked from commit
b52c034c7d53014e9d5c1dfc3501e9adfb0c6391)
Neale Ranns [Wed, 11 Apr 2018 15:08:30 +0000 (08:08 -0700)]
VOM: support for pipes
Change-Id: I5c381dfe2f926f94a34ee8ed8f1b9ec6038d5fe2
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
(cherry picked from commit
208c29aac523231af2420a95ba7e5d361698780b)
Hongjun Ni [Tue, 17 Jul 2018 16:17:44 +0000 (00:17 +0800)]
VPP crash when run "lb set interface nat4 in <intc>" VPP-1343
Change-Id: I23be9c29227e7dd1bb11b5b7fa910bb61c2be6c9
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
Ed Warnicke [Mon, 16 Jul 2018 17:11:07 +0000 (12:11 -0500)]
Update .gitreview for stable/1807
Change-Id: I6e405e9d729990bb57aaaa4aab01a1d4f54f4ee4
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
Dave Barach [Sat, 14 Jul 2018 00:12:45 +0000 (20:12 -0400)]
VPP-1341: fix loopback interface graph arcs
Remove broken special case from l2_input.c:set_int_l2_mode(), which
turns out to confuse the graph dispatch engine.
The loopback TX function needs to push packets to either
ethernet-input or to l2-input, based on bridge / BVI
configuration. Rather than overloading a single graph arc - and making
vain attempts to reconfigure it - create both arcs and use the correct
one.
Rewrote the loopback tx function as an idosyncratic multi-arch
quad/single loop fn.
Change-Id: I15b56ce641d90a11e7b3c7d23859f40e168dd7b2
Signed-off-by: Dave Barach <dave@barachs.net>
John Lo [Fri, 13 Jul 2018 21:29:58 +0000 (17:29 -0400)]
Improve IP4 ARP and IP6 ND Events Notification
For L2 ARP termination, use both brodcast ARP request and reply
packets to provide MAC/IP binding events.
For IP4/IP6 neighbor adress resolution, send resolution events
if there is an address resolution attemp with a static neighbor
entry where both IP and MAC matches. This allow probe of an IP
neighbor with a static entry to confirm it is responding with
a reply matching that of the static entry.
Change-Id: Iffb923bb5aea3f9021436735d5ca06e7b24f966f
Signed-off-by: John Lo <loj@cisco.com>
Igor Mikhailov (imichail) [Fri, 13 Jul 2018 23:59:09 +0000 (16:59 -0700)]
Add QEDE poll mode driver (librte_pmd_qede)
The driver implements Cavium QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G
Intelligent Ethernet Adapters (IEA) and Converged Network Adapters (CNA)
(doc/guides/nics/qede.rst)
Change-Id: If17e8cb572eb8c0585085be1c7cfdfa159eb6e68
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
Francois Clad [Wed, 4 Jul 2018 09:47:21 +0000 (11:47 +0200)]
srv6-as: Adding support for L2 traffic
Change-Id: I72978c5957cb1acf154c9de7ad153092bac37785
Signed-off-by: Francois Clad <fclad@cisco.com>
Francois Clad [Mon, 9 Jul 2018 14:45:23 +0000 (16:45 +0200)]
srv6-as: Adding test cases
Change-Id: I597a88d255c2f7cff552b1fa12ed4a7c4579b91c
Signed-off-by: Francois Clad <fclad@cisco.com>
Damjan Marion [Fri, 13 Jul 2018 17:17:57 +0000 (19:17 +0200)]
vppinfra: add missing header file to install list
Change-Id: I1f82c40f9f927296d5d439b0db70a70ef803cf3c
Signed-off-by: Damjan Marion <damarion@cisco.com>
Dave Barach [Fri, 13 Jul 2018 13:59:45 +0000 (09:59 -0400)]
Improve the "show version" command
Add "show version cmdline" to display the command line
Add doxygen tags to the source code
Change-Id: I0205b373062fd88f176d9c8086d89d7784a5172f
Signed-off-by: Dave Barach <dave@barachs.net>
Dave Barach [Fri, 13 Jul 2018 15:22:23 +0000 (11:22 -0400)]
VPP-1338: fix ipsec api coverity warnings
Remove useless unsigned comparisions: "(unsigned) value < 0", correct
a couple of incorrect limit checks.
Change-Id: I9606c4057df157f770d59535457cb9df1cfd1f35
Signed-off-by: Dave Barach <dave@barachs.net>
shenJibiao [Fri, 13 Jul 2018 06:58:28 +0000 (14:58 +0800)]
The gateway IP should be 172.16.2.1
Change-Id: I28d05a04abd11f630035d34ce573016c77ffab53
Signed-off-by: shenJibiao <shenjibiao@corp.netease.com>
Dave Cornejo [Thu, 12 Jul 2018 18:37:55 +0000 (08:37 -1000)]
STATS fix memory leak in stat_client.c
continue statement in case bypasses cleaning up of unserialized
node
Change-Id: I0103d31df2eed3ed04d7cdcdfb790f4d9a376336
Signed-off-by: Dave Cornejo <dcornejo@netgate.com>
Dave Barach [Thu, 12 Jul 2018 17:00:47 +0000 (13:00 -0400)]
Fix debug CLI node recycling bugs
When creating a new - as opposed to recycled - debug CLI process node,
perform a proper barrier sync and node runtime update. Otherwise, the
graph replicas diverge for some period of time. That's not immediately
fatal, but it's not a good idea, either.
When renaming a debug cli process node, fix all of the name-vector
replicas before freeing the [one-and-only] name vector.
This fixes the so-called stats segment node runtime scraper crash,
which tripped over a replicated dangling reference to the
recently-freed debug CLI node name.
Change-Id: Ieffabd9f003139e534b9d79b88370439907930e5
Signed-off-by: Dave Barach <dbarach@cisco.com>
Dave Barach [Thu, 12 Jul 2018 20:56:52 +0000 (20:56 +0000)]
Revert "vppinfra: AVX2 blend"
Causes clang validation failures. The patch did not actually pass validation; unfortunately it received a +1 from fd.io JJB - presumably due to a race condition
This reverts commit
779c865cc6c7af5bb435d8b3465d80685370edb2.
Change-Id: Ica3697f8f90e67d3eae4debc597f27d7d512004a
Signed-off-by: Dave Barach <dbarach@cisco.com>
Francois Clad [Thu, 12 Jul 2018 07:56:23 +0000 (09:56 +0200)]
srv6: fix pointers in quad loops
Change-Id: I51c4bcbd456d2e7ffbdeef9cc8c7703d1c88b52e
Signed-off-by: Francois Clad <fclad@cisco.com>
Neale Ranns [Wed, 11 Jul 2018 16:21:06 +0000 (09:21 -0700)]
IGMP: validate the packets length in the DP
thanks to coverity... validate that the length of the packet on
wire matches the size of the header based on the number of groups
and sources. drop those that don't match.
Change-Id: Iab3f3a835f6a43d9c73c5d502ea5ceccdd6985b0
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Wed, 11 Jul 2018 15:03:26 +0000 (08:03 -0700)]
stats-segment: add startup node serialization option
Node serialization is turned off by default. To enable it do:
statseg {serialize-nodes on}
Change-Id: I53bba3cab517bd3ba90eba52d94b3ebb16870141
Signed-off-by: Florin Coras <fcoras@cisco.com>
Damjan Marion [Tue, 10 Jul 2018 12:28:36 +0000 (14:28 +0200)]
vppinfra: AVX2 blend
Change-Id: Ie7a64318f10ebb535c98aff4e25cdfc48f60ff33
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Wed, 11 Jul 2018 12:25:06 +0000 (05:25 -0700)]
session: push tx notifications only if needed
VPP-1340
Change-Id: Ia3f2fc054dbfb2ba912a768c70466e7042024e32
Signed-off-by: Florin Coras <fcoras@cisco.com>
Ed Kern [Wed, 11 Jul 2018 13:45:41 +0000 (07:45 -0600)]
Documentation: Placeholder directory and files
This adds the directory sphinx and sphinx/docs
as well as two matching placeholder files. These
are being added now to facilitate some gerrit triggers
Change-Id: I0e6e7607c5ae5cdbf05718b95b1d299178544485
Signed-off-by: Ed Kern <ejk@cisco.com>
Damjan Marion [Wed, 11 Jul 2018 10:47:43 +0000 (12:47 +0200)]
avoid using thread local storage for thread index
It is cheaper to get thread index from vlib_main_t if available...
Change-Id: I4582e160d06d9d7fccdc54271912f0635da79b50
Signed-off-by: Damjan Marion <damarion@cisco.com>
Eyal Bari [Wed, 11 Jul 2018 11:01:36 +0000 (14:01 +0300)]
bridge-domain:fix no_flood count
no_flood count was not updated on removal
might couase a negative insertion index when adding new members
Change-Id: I2caf2c453dfef1a9f16fb8fa2e5af42b4e653a69
Signed-off-by: Eyal Bari <ebari@cisco.com>
Damjan Marion [Wed, 11 Jul 2018 10:24:19 +0000 (12:24 +0200)]
memif: fix max number of rings
Change-Id: Ie7621a38a44e7c692e23e58c43d27d8d2aab43e6
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 11 Jul 2018 11:29:17 +0000 (13:29 +0200)]
avf: descriptor should be volatile
Change-Id: I2cb4cf2167b6e958d2e57b461848a4a189e3fda0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Francois Clad [Wed, 13 Jun 2018 13:03:28 +0000 (15:03 +0200)]
srv6-as: Adding rewrite counters
Change-Id: I57f1db6fabfdb8ddfba514ad754707b24d47c962
Signed-off-by: Francois Clad <fclad@cisco.com>
Francois Clad [Mon, 9 Jul 2018 14:33:39 +0000 (16:33 +0200)]
srv6: Fixing SRH parsing bug in Scapy 2.4
Change-Id: Ib2cb345d07665735697bf54ad48d353ba4112eda
Signed-off-by: Francois Clad <fclad@cisco.com>
Dave Barach [Wed, 11 Jul 2018 11:01:25 +0000 (07:01 -0400)]
VPP-1338: fix coverity warning in mactime plugin
Add missing VALIDATE_SW_IF_INDEX macro / check.
Net of this fix, a spurious warning will probably recur. Coverity will
complain that sw_if_index is tainted. Please dismiss the warning.
Change-Id: Iec31ce1d86f742e197e63b0c5d474cd5e496ee5f
Signed-off-by: Dave Barach <dave@barachs.net>
Mohsin Kazmi [Wed, 4 Jul 2018 13:17:01 +0000 (15:17 +0200)]
vom: Add TAPv2 support
Change-Id: I1fff014dd7d8a66ed3cb063e8c996de4f7e745c2
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Damjan Marion [Wed, 11 Jul 2018 08:51:00 +0000 (10:51 +0200)]
threads: fix issue with setting main-core to 0
Change-Id: Id3ccfcfa2a88cf7aa106f1202af7cd677de32575
Signed-off-by: Damjan Marion <damarion@cisco.com>
Jan Gelety [Tue, 3 Jul 2018 11:58:24 +0000 (13:58 +0200)]
make_test: Add missing classifier tests
Jira: CSIT-1172
Change-Id: I04e726aab97efb96ed835d2a6db293a2acab0add
Signed-off-by: Jan Gelety <jgelety@cisco.com>
Dave Barach [Wed, 11 Jul 2018 00:22:43 +0000 (20:22 -0400)]
VPP-1337: Dangling reference be gone!
Freeing the prefix and address vectors after signalling them from
dhcpv6_client_node_fn to either the pd or iana report processes is
absolutely wrong. The code has appeared to work by luck.
This took three full days' worth of expert effort to root cause - in
the context of an unrelated patch - and about one minute to fix.
Change-Id: Ie589ab1a70ae83441ab4e8b6618a6d405741f53f
Signed-off-by: Dave Barach <dave@barachs.net>
Neale Ranns [Tue, 10 Jul 2018 12:26:01 +0000 (05:26 -0700)]
IGMP: coverity found defects
Change-Id: Id6aba75c30712e9a0ac7b3075bd6cfc49d6bec36
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Tue, 10 Jul 2018 10:00:07 +0000 (03:00 -0700)]
FIB path dump: fix next-hop-table ID for recursive routes
Change-Id: I57b4ebca29c0b185770373e8878f89a9bd13b742
Signed-off-by: Neale Ranns <nranns@cisco.com>
Matus Fabian [Mon, 9 Jul 2018 08:34:20 +0000 (01:34 -0700)]
NAT44: multiple outside FIB tables (VPP-1314)
Change-Id: I56eb15f8fd2d3049845287dc3df7870582764f8b
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Marco Varlese [Wed, 4 Jul 2018 12:31:10 +0000 (14:31 +0200)]
openSUSE: spec file update to reflect latest deps
Change-Id: I3c04956400a2e88d331f43d1b4865ee2c75e7bc9
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
Igor Mikhailov (imichail) [Mon, 9 Jul 2018 22:24:39 +0000 (15:24 -0700)]
Remove unused variables
Change-Id: If4da80c7eefe55905594eaaba0946d75f0892da5
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
Juraj Sloboda [Mon, 9 Jul 2018 00:36:37 +0000 (02:36 +0200)]
Do not translate packets destined for NAT64 inside interface (VPP-1331)
Change-Id: Ieb8020f57ed5ad20daf552cd62ae3fdd8c573926
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Brian Brooks [Thu, 28 Jun 2018 02:27:26 +0000 (21:27 -0500)]
pp2: increase recycle batch size
Increase batch size when recycling buffers. This increases Mpps by 7%.
Change-Id: I2a460611d9c36e9bf087b076fc4e187acf61108f
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
Brian Brooks [Wed, 27 Jun 2018 20:50:57 +0000 (15:50 -0500)]
pp2: use configured RX queue size
Change-Id: I5e5b2dd4f4bc3e257824015c723228ac5128d6a0
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
Neale Ranns [Fri, 8 Jun 2018 06:48:20 +0000 (23:48 -0700)]
IGMP improvements
- Enable/Disable an interface for IGMP
- improve logging
- refactor common code
- no orphaned timers
- IGMP state changes in main thread only
- Large groups split over multiple state-change reports
- SSM range configuration API.
- more tests
Change-Id: If5674f1044e7e97274a711f47807c9ba689d7b9a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Eyal Bari [Sun, 8 Jul 2018 05:15:56 +0000 (08:15 +0300)]
vxlan:use bihash_16_8 for ipv4 lookup
Change-Id: I0d4630c88d6caacffcd073ebaa12766dfc893f70
Signed-off-by: Eyal Bari <ebari@cisco.com>
Neale Ranns [Mon, 9 Jul 2018 16:56:32 +0000 (09:56 -0700)]
new pipe code does not use stdints
Change-Id: Idee565af852c7bb434b886fbf31c6e76315686c4
Signed-off-by: Neale Ranns <nranns@cisco.com>
Matthew Smith [Mon, 9 Jul 2018 15:19:10 +0000 (10:19 -0500)]
Fix missing pipe.api.h
Errors occur when building a library outside the VPP
source tree that uses the shared memory API because
vnet/devices/pipe/pipe.api.h is not installed but is
included by vnet/vnet_all_api_h.h.
In src/vnet.am, Add vnet/devices/pipe/pipe.api.h to
nobase_include_HEADERS.
Change-Id: Id3dc28d90f41bb0ff576736f9d77bee19a2b8fdd
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Matthew Smith [Thu, 5 Jul 2018 19:45:58 +0000 (14:45 -0500)]
Fix IPsec intf tx node setup at intf creation
When using a DPDK cryptodev with IPsec, sending outbound
packets results in a crash on division by zero if using an
algorithm not supported by the OpenSSL ESP nodes. This
includes AES-GCM and MD5.
At IPsec intf creation time, the next node at slot
IPSEC_OUTPUT_NEXT_ESP_ENCRYPT for ipsec_if_tx_node_fn is
set to the node named esp-encrypt. This is the OpenSSL
ESP encrypt function. If DPDK cryptodevs are configured,
dpdk-esp-encrypt is the correct next node.
Change to setting the next node according to the value in
ipsec_main.esp_encrypt_node_index. That value is set to
esp-encrypt by default. If DPDK cryptodevs are configured
it gets set to dpdk-esp-encrypt.
Change-Id: I83896c76b975d74aead247a162c85eccca9575a8
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Matthew Smith [Fri, 6 Jul 2018 22:00:00 +0000 (17:00 -0500)]
ixgbe link update patch for DPDK 18.05
Add patch for DPDK 18.05 that was previously applied
to DPDK 18.02.1. Issue with ixgbe on x550 SFP+ still
exists.
Bug report submitted to DPDK:
https://bugs.dpdk.org/show_bug.cgi?id=69
Change-Id: I9b005709ddf2a72192b1288ba8b4bac85bf12685
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Florin Coras [Fri, 6 Jul 2018 06:44:23 +0000 (23:44 -0700)]
session/svm: fix coverity warnings
Change-Id: Ic5daed1f6c23d9561a04e235dcbf257f190d066a
Signed-off-by: Florin Coras <fcoras@cisco.com>
Mohsin Kazmi [Tue, 26 Jun 2018 15:20:11 +0000 (17:20 +0200)]
vhost: Add multi-versioning support
It also refactors the vhost code which was in one big file vhost-user.c.
Receive side code is in vhost_user_input.c and
Transmit side code is in vhost_user_output.c
Change-Id: I1b539b5008685889723e228265786a2a3e9f3a78
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Neale Ranns [Wed, 4 Jul 2018 17:24:24 +0000 (10:24 -0700)]
Pipes
A pipe resembles a unix pipe. Each end of the pipe is a full
VPP interface.
pipes can be used for e.g. packet recirculation, inter-BD, etc.
Change-Id: I185bb9fb43dd233ff45da63ac1b85ae2e1ceca16
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Florin Coras [Wed, 4 Jul 2018 11:17:41 +0000 (04:17 -0700)]
svm: add unidirectional message queue
Meant for single reader/writer message exchanges. Supports multiple
message rings.
Change-Id: I925de9a6ae19226c5c39a63caff76424ed123a13
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dave Barach [Thu, 5 Jul 2018 15:48:20 +0000 (11:48 -0400)]
add stat segment size configuration
Change-Id: I395ff9c91d670a9f9e50dc1b030e0412b7234de5
Signed-off-by: Dave Barach <dave@barachs.net>
Eyal Bari [Mon, 4 Jun 2018 09:25:05 +0000 (12:25 +0300)]
vxlan:use bihash_24_8 for ipv6 lookup
* added the fib index into the key
* conform coding style for vxlan.h
* added "show vxlan tunnel raw" command to dump bihash
Change-Id: Icc96e41abb648e96de5b4605b035f68f9e20f8a9
Signed-off-by: Eyal Bari <ebari@cisco.com>
Klement Sekera [Wed, 4 Jul 2018 11:43:46 +0000 (13:43 +0200)]
VPP-1335 vapi crash when memclnt_keepalive received
Change-Id: If33a7cc6c76147fd3ea9d8118370e7a508819b81
Signed-off-by: Klement Sekera <ksekera@cisco.com>
John Lo [Wed, 4 Jul 2018 20:27:59 +0000 (16:27 -0400)]
Fix clib_bitmap_next_clear() function when no clear bits left
If the bitmap has no bit clear after the input bit position i,
the function will return i even if its bit is set.
Fix is to return the next bit just beyond the free bitmap.
This can cause IP neighbor scan crash in ip_neighbor_scan() with
a debug image. With production image, ip_neighbor_scan() may still
function, AFAICT, with extra neighbor delete attempts for entries
already deleted, until these entries are reused for new neighbors.
Change-Id: If6422ef6f63908ea39651de4ccbd8cb0b294bd69
Signed-off-by: John Lo <loj@cisco.com>
Klement Sekera [Fri, 15 Jun 2018 10:44:16 +0000 (12:44 +0200)]
fix VPP-1312 Invalid UDP packet length in ipsec
Change-Id: Ibfd0a2e7010e6e74c32244c538f60e0713bea03f
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Marco Varlese [Wed, 4 Jul 2018 12:23:08 +0000 (14:23 +0200)]
openSUSE: add python2-ply dependency
Change-Id: I39ad69975e34bf11d3c009ad705157ceefa43fb9
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
Damjan Marion [Tue, 3 Jul 2018 20:24:32 +0000 (22:24 +0200)]
Do not override skip-cores if set in startup.conf
Change-Id: I97d75f58a46275fdad5add27dc59c731cc3ac64d
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Tue, 3 Jul 2018 13:37:00 +0000 (06:37 -0700)]
IP FIB dump - incorrect table-ID for deag paths
Change-Id: I383cfb662b4d2bf4f814e3eb9a1ce4d6bff7066d
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Wed, 4 Jul 2018 06:29:49 +0000 (23:29 -0700)]
Remove unused members from ip4_fib_t
Change-Id: I8b92652d512bad5d774c7862f9808c306bbeff18
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Neale Ranns [Tue, 3 Jul 2018 13:41:47 +0000 (09:41 -0400)]
add 'src-lookup' keyword for FIB paths
Change-Id: I4554d1e94bd70ef5b3b0aaeb1a0fceaeb81c5f96
Signed-off-by: Neale Ranns <nranns@cisco.com>
Damjan Marion [Tue, 3 Jul 2018 15:24:45 +0000 (17:24 +0200)]
Set main thread affinity before main heap is allocated
Change-Id: I524909570fc1736f51fd437d6d30566c461139bd
Signed-off-by: Damjan Marion <damarion@cisco.com>
Mohsin Kazmi [Fri, 29 Jun 2018 15:04:23 +0000 (17:04 +0200)]
vom: Add cross connect support
Change-Id: Ia316730d8f9fe9836200aa96e0b5fd827dc71c98
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Florin Coras [Mon, 2 Jul 2018 08:30:51 +0000 (01:30 -0700)]
tcp: update snd_una_max for retranmsits
Change-Id: I0573d0aff39581bba96e610228a10ae923a8ca06
Signed-off-by: Florin Coras <fcoras@cisco.com>