Commit Graph

5032 Commits

Author SHA1 Message Date
ecbd20b6e9 tcp: fix sacks lost bytes counting (VPP-1465)
Change-Id: Ie46b3a81de4ed39b7b40e3879436f7e5a2908d98
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-18 14:34:45 -07:00
c01d578a62 tls: fix connection failures/interrupts at scale (VPP-1464)
Change-Id: I0bc4062c1fd3202ee201acb36a2bb14fc6ee1543
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-18 18:47:20 +00:00
c5347d9d42 tcp: fix cleanup of non established connections (VPP-1463)
- fix delete of connection in syn-received
- fix delete of half-open connection

Change-Id: I72ff4b60406a2762d998328c52f41adea40d2c1b
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-18 16:10:12 +00:00
b4d2c967f8 Ping; remove unused arrays
Change-Id: I104f2b4e0b1c354d3671962be3f6002f2721388d
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-18 15:15:14 +00:00
0685da4a6d PAPI: Expose API enums to tests / applications
e.g:
from vpp_papi import VppEnum

VppEnum.vl_api_address_family_t.ADDRESS_IP4

Change-Id: I10c22d57234a1a06e98a889cf80b19085b468ed3
Signed-off-by: Ole Troan <ot@cisco.com>
2018-10-18 10:16:49 +00:00
5fcca2a124 Update version (18.10) for API changes script
Change-Id: I41d22bfc87849e923628de08f922f7a541579fe1
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2018-10-18 07:38:13 +00:00
9be7c6da31 vxlan:decap caching error (VPP-1462)
Change-Id: I3ef0725684bcb8ea526abe0ce62562b35a0070f5
Signed-off-by: Eyal Bari <ebari@cisco.com>
(cherry picked from commit 0d87894bf2)
2018-10-17 15:46:29 +00:00
87460d05e8 fix ip6 prefix check for tap_v2
Change-Id: Ifbb1393fc3c50c140c09e8baedcd4a92189ba56e
Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2018-10-17 15:13:38 +00:00
b99de836f7 Update to doxygen documentation for release 18.10
Change-Id: Id8eebd59bad27ac3cc46bf993a5ca1d8410bf84c
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
(cherry picked from commit 44c6ca6038)
2018-10-17 10:15:27 +00:00
6a231a16b2 IP Route add/del API is MP safe
Change-Id: I0bfa4c9a3bb22155d7862cc13019cb172e77407c
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-17 09:46:16 +00:00
c977e7c100 tcp: fix multiple fin retries (VPP-1461)
Change-Id: I1be7c59df7b48875f81ebeebf5f39ed15a43d2d8
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-17 09:40:22 +00:00
34ca075636 stats: vpp_get_stats missing last interface in dump
Change-Id: Ie1fa560cb255a9b13ddb4929da8f33286a8c137e
Signed-off-by: Ole Troan <ot@cisco.com>
2018-10-17 09:30:02 +00:00
ad65f88c51 acl-plugin: tuplemerge: refresh the pointer to hash-readied ACL entries per each collision in split_partition() (VPP-1458)
A pointer to hash-ready ACL rules is only set once, which might cause a crash if there are colliding entries
from more than one ACL applied.

Solution: reload the pointer based on the element being processed.

Change-Id: I7a701c2c3b4236d67293159f2a33c4f967168953
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit 84112dd4f9)
2018-10-17 07:57:25 +00:00
d6fe5bd606 tcp: avoid sack processing when not needed (VPP-1460)
Change-Id: If81ee34e1f1e929de1a5b758ddb9aede4002e858
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-17 07:32:46 +00:00
69fdfee581 bond: tx optimizations
Break up bond tx function into multiple small workloads:
  1. parse the packet header and hash it based on the configured algorithm
  2. optionally, trace the packet
  3. convert the hash value from (1) to the slave port
  4. update the buffers with the slave sw_if_index
  5. Add the buffers to the queues
  6. Create and send the frames

old numbers
-----------
Time 5.3, average vectors/node 223.74, last 128 main loops 40.00 per node 222.61
  vector rates in 3.3627e6, out 6.6574e6, drop 3.3964e4, punt 0.0000e0
             Name                 State         Calls          Vectors        Suspends         Clocks       Vectors/Call
BondEthernet0-output             active              68998        17662979               0          1.89e1          255.99
BondEthernet0-tx                 active              68998        17662979               0          2.60e1          255.99
TenGigabitEthernet3/0/1-output   active              68998         8797416               0          1.03e1          127.50
TenGigabitEthernet3/0/1-tx       active              68998         8797416               0          7.85e1          127.50
TenGigabitEthernet7/0/1-output   active              68996         8865563               0          1.02e1          128.49
TenGigabitEthernet7/0/1-tx       active              68996         8865563               0          7.65e1          128.49

new numbers
-----------
BondEthernet0-output             active             304064        77840384               0          2.29e1          256.00
BondEthernet0-tx                 active             304064        77840384               0          2.47e1          256.00
TenGigabitEthernet3/0/1-output   active             304064        38765525               0          1.03e1          127.49
TenGigabitEthernet3/0/1-tx       active             304064        38765525               0          7.66e1          127.49
TenGigabitEthernet7/0/1-output   active             304064        39074859               0          1.01e1          128.51

Change-Id: I3ef9a52bfe235559dae09d055c03c5612c08a0f7
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-10-17 06:50:56 +00:00
9744e6d027 VPP-1459:Ip4 lookup fail when exist prefix cover.
Change-Id: I4ba0aeb65219596475345e42b8cd34019f5594c6
Signed-off-by: mu.duojiao <mu.duojiao@zte.com.cn>
2018-10-17 10:59:09 +08:00
eb97e5f548 tls: fix multi threaded medium scale test (VPP-1457)
- ensure session enqueue epoch does not wrap between two enqueues
- use 3 states for echo clients app, to distinguish between starting and
closing phases
- force tcp fin retransmit if out of buffers while sending a fin

Change-Id: I6f2cab46affd1148aba2a33fb6d58bcc54f32805
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-16 17:14:39 +00:00
f47e9b648a PAPI: Add bool type support in vppapigen.
Change-Id: I9c2eaa2ee04a1c9a92018afb92cb2c5610df2991
Signed-off-by: Ole Troan <ot@cisco.com>
2018-10-16 15:27:05 +00:00
9d428b4315 PAPI: Add timeout support for socket transport
Change-Id: I0402989e0ac738cab2f918e6e3d73c571457c08e
Signed-off-by: Ole Troan <ot@cisco.com>
2018-10-16 15:16:07 +02:00
710071bf0e FIB: use vlib-log for debugging
Change-Id: I9052202b8cbcf656e61d635253d515f0f3a8d145
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-16 12:22:49 +00:00
a5ab5034f4 Fix coverity issue for potentially overflowing of page size
Change-Id: I2779626d745badb63386efcf729da7a094a4f297
Signed-off-by: Haiyang Tan <haiyangtan@tencent.com>
2018-10-16 11:37:49 +00:00
e9239c9782 Ping; report failures to the terminal
Change-Id: Icd48de31302f62c59961c573699a1dd0474b8acb
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-16 11:35:46 +00:00
aa27eb95b7 vcl: fix bidirectional tests (VPP-1455)
- add epoll dequeued events beyond maxevents to unhandled
- filter multiple epoll rx events

Change-Id: I618f5f02b19581473de891b3b59bb6a0faad10b5
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-16 10:05:33 +00:00
97748cae2e IGMP: proxy device
Create 'proxy device' per VRF and add one upstream
and one or many downstream interfaces.

Change-Id: I1cef05fb01e73a5b483c7a2f4debaaeffe2c8155
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-10-16 08:28:15 +00:00
02a95ce8d5 vmxnet3: show vmxnet3 with filtering capability [VPP-1452]
show vmxnet3 desc may display 5000 lines of output since it has 5 tables. Each
table may have 1000 entries. It would not be very useful to debug problem.

We need filtering capability for the subject show command. We need to be able
to display the descriptor table per interface, per interface per table, and
per interface per table per slot. The latter is the most useful.

tested the following valid combinations
show vmxnet3
show vmxnet3 desc
show vmxnet3 vmxnet3-0/13/0/0
show vmxnet3 vmxnet3-0/13/0/0 desc
show vmxnet3 vmxnet3-0/13/0/0 rx-comp
show vmxnet3 vmxnet3-0/13/0/0 rx-comp 1
show vmxnet3 vmxnet3-0/13/0/0 tx-comp
show vmxnet3 vmxnet3-0/13/0/0 tx-comp 1
show vmxnet3 vmxnet3-0/13/0/0 rx-desc-0
show vmxnet3 vmxnet3-0/13/0/0 rx-desc-0 1
show vmxnet3 vmxnet3-0/13/0/0 rx-desc-1
show vmxnet3 vmxnet3-0/13/0/0 rx-desc-1 1
show vmxnet3 vmxnet3-0/13/0/0 tx-desc
show vmxnet3 vmxnet3-0/13/0/0 tx-desc 1

negative tests and command is rejected
show vmxnet3 abc
show vmxnet3 desc abc
show vmxnet3 vmxnet3-0/13/0/0 abc
show vmxnet3 vmxnet3-0/13/0/0 desc abc
show vmxnet3 vmxnet3-0/13/0/0 rx-comp abc
show vmxnet3 vmxnet3-0/13/0/0 rx-comp 1 abc

Change-Id: I0ff233413496e58236f8fb4a94e493494c20c5cb
Signed-off-by: Steven <sluong@cisco.com>
2018-10-16 01:43:22 +00:00
b78d6a0b3c vmxnet3: vmxnet3_test_plugin.so: undefined symbol: format_vlib_pci_addr [VPP-1456]
When using vpp_api_test, there is an undefined symbol error for
format_vlib_pci_addr when vmxnet3_test_plugin.so is loaded.

The cause is due to vlib not included in vpp_api_test. Remove the reference
for vlib.so in vmxnet3_test.

Change-Id: I37c00dfe2f843d99ad6c4fc7af6ed10bac4c2df8
Signed-off-by: Steven <sluong@cisco.com>
(cherry picked from commit 3d29e83112)
2018-10-16 01:42:37 +00:00
ac64b71b28 Sticky Load-balance
keep the number of buckets in the load-balanced fixed. If a
path goes dwon fill its buckets with those from the next
available up path.

Change-Id: I15603ccb899fa9b77556b898c99136379cf32eae
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-16 01:39:50 +00:00
a23caded85 vnet: create L2 feature arc infrastructure
This commit adds two new nodes in the L2
datapath in input and output direction respectively.

These nodes fork the traffic into three feature
arcs: ip4, ip6 and nonip, which later join
to continue the usual L2 processing.
The vnet_l2_feature_enable_disable() function
with the same signature as
vnet_feature_enable_disable() takes care of
enabling the L2 datapath feature bits as needed, when
the features are enabled/disabled.

Thus, L2 features may use the similar plumbing as
the L3 features enjoy.

Change-Id: I76877b3a92d794c492bff1622bb26acba05705b2
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2018-10-15 20:03:56 +00:00
1c98831bf0 dpdk: drop no longer used config options
DPDK has switched to dynamic logging for initialization (since 18.05).
Don't generate config for unused options.

Change-Id: I3f1a5b3b8bee38abc9d0654737b59368646ed0fa
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-15 11:29:17 +00:00
3901a038ed dpdk: only look at PCI information on PCI devices
The rte_device is use as a base type of all DPDK devices.
It is not valid to use container_of to find PCI information
unless the bus of the rte_device is pci. Otherwise, the
pointer is looking at some other data, which may or may not
be zero.

This change introduces a helper function to get rte_pci_device
pointer. If device is on PCI bus it returns pointer to
rte_pci_device info, otherwise it returns NULL.

Change-Id: Ia7446006bb93a7a54844969f3b3dd3b918890dfd
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-15 11:29:17 +00:00
59a829533c VPP-1448: Fix error when recurse on down the trie.
Change-Id: Idfed8243643780d3f52dfe6e6ec621c440daa6ae
Signed-off-by: mu.duojiao <mu.duojiao@zte.com.cn>
2018-10-15 07:54:03 +00:00
f8d5e21468 vxlan:fix ip6 tunnel deletion
Change-Id: I70fb7394f85b26f7e632d74fc31ef83597efdd16
Signed-off-by: Eyal Bari <ebari@cisco.com>
2018-10-14 23:00:35 +00:00
7ff7453af3 acl-plugin: make each test in test_acl_plugin runnable separately
And improve the robustness of the ethertype whitelist test coverage

Change-Id: I64fe3a25208dbc619ae5cd6404f6122e69394a38
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2018-10-14 10:49:57 +00:00
c0d532d173 session: mark apis for deprecation
Change-Id: I913ffc963928b74cf4753b6b9a0eed4436887e04
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-14 10:49:28 +00:00
a4878ed078 vcl: fix empty epoll returns (VPP-1453)
Change-Id: I0b191ddb749b1aa132c2d33b8359c146b36d27af
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-14 10:48:51 +00:00
83ea669b21 session: don't wait indefinitely for apps to consume evts (VPP-1454)
Change-Id: I544b24d2b2c4a09829773cf180d1747f4b087d4c
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-10-12 17:00:16 -07:00
e78bca16af vnet: complete the fix for l3_hdr_offset calculation for single loop fastpass case (VPP-1444)
20e6d36b has moved the calculation of the l3_hdr_offset into the determine_next_node()
function, with the assumption that the current_data in the buffer is at
the L3 header. This is not the case for the single loop fastpath,
where the vlib_buffer_advance() call is made after the call to
determine_next_node(), as a day1 behavior. As a result - that path
incorrectly sets the l3_hdr_offset.

Solution: move the vlib_buffer_advance() call to before determine_next_node()

Change-Id: Id5eaa084c43fb6564f8239df4a0b3dc0412b15de
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit 376414f4c3)
2018-10-12 13:22:08 +00:00
75b9f45a15 ip: add container proxy dump API (VPP-1364)
Change-Id: I3cb89dbfb7174b9913a8c4ad9b3b1dc9f6ed6326
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-10-12 07:56:35 +00:00
6ca6ac6c88 dpdk: support passing log-level
Since DPDK 17.05, DPDK logging supports per subsystem dynamic logging.
Allow passing this as log-level on EAL command line.

dpdk {
	log-level pmd.net.virtio.*:debug
...
}

Change-Id: If9576c11aba390a5cd2740fc1c9da5768689bd74
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-12 00:07:09 +00:00
565409b211 Add parallel test run info to test/doc
An overview of parallel test runs, describing the library used, results
gathering, stdout and stderr handling and how to execute a parallel run.

Change-Id: Ic83cd689751ee46914e3b858b0b24a74b083f99f
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2018-10-12 00:02:17 +00:00
82b4ceb8e6 NAT44: identity NAT fix (VPP-1441)
Change-Id: Ic4affc54d15d08b9b730f6ec6146ee053b28b4b6
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-10-12 00:00:42 +00:00
e9b5582822 Stats: Include stat_segment.h in packages.
Change-Id: I976c0aba8397badf64763c4dbddce67009a4fb23
Signed-off-by: Ole Troan <ot@cisco.com>
2018-10-11 23:37:48 +00:00
4f5f8d7972 Fix vpp-ext-deps package version in stable branch
Change-Id: Ifb33622b50113501f1d23ab94ba9da708678d6be
Signed-off-by: Damjan Marion <damarion@cisco.com>
(cherry picked from commit 5551e41f78)
2018-10-11 20:40:30 +00:00
0db9b04cf0 bfd:fix handling session creation batch
when multiple session creating script is ran (via exec) only the first
one actually starts

Change-Id: I0fc36f65795c8921cf180e0b555c446e5a80be45
Signed-off-by: Eyal Bari <ebari@cisco.com>
2018-10-11 19:37:43 +00:00
d29cc8893e L2: BM traffic does not use UU-FWD (VPP-1445)
Change-Id: I5495c37da2fb8ff48c4af14ccba021d64eac52b6
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-11 13:36:43 +00:00
642829de79 vppinfra: introduce clib_mem_vm_ext_free() to avoid fd leaks
Change-Id: I8691a10493d159a97574550c111f07722960a7cd
Signed-off-by: Haiyang Tan <haiyangtan@tencent.com>
2018-10-10 21:32:46 +00:00
cd80692dfc reassembly: get number of workers instead of threads (VPP-1435)
Change-Id: If3abeab2b304e2df41139707a4c8d045fab6ef99
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2018-10-10 16:06:19 +00:00
8b09953661 vmxnet3: better error handling
try harder on output - if there is no descriptor space available, try to free
up some and check again.
make sure we free the buffer if error is encoutered on input.

Change-Id: I41a45213e29de71935afe707889e515037cd081f
Signed-off-by: Steven <sluong@cisco.com>
2018-10-10 16:06:05 +00:00
40dd73bcfa Setup, teardown, DEBUG=core, FAILFAST fixes
- Fixed a bug when an error occuring in tearDownClass would not result in
test being marked as failed
- Improved test results reporting in cases when an error occurs in setUpClass
and tearDownClass
- Fixed DEBUG=core when the core is produced in setUpClass or
tearDownClass
- Reworked DEBUG=core to always be handled after all tests have been
executed
- Fixed FAILFAST=1 for parallel test runs

Change-Id: I3e9cd3b97ba6fa802fa0aa2dd7678ff82eee09ec
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
2018-10-10 16:05:37 +00:00
825fc4892e Integer underflow and out-of-bounds read (VPP-1442)
Change-Id: Ife2a83b9d7f733f36e0e786ef79edcd394d7c0f9
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-10-10 16:03:40 +00:00