vpp.git
5 years agoMAP: Use explicit address/prefix types in API 15/16115/3
Ole Troan [Thu, 22 Nov 2018 11:53:00 +0000 (12:53 +0100)]
MAP: Use explicit address/prefix types in API

Change-Id: Ic751fecc4a060eedcdb9eaf5d02e1416c838fd63
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agoRevert "Add support for MAP-T CE (VPP-1058)" 14/16114/2
Ole Troan [Thu, 22 Nov 2018 11:15:17 +0000 (12:15 +0100)]
Revert "Add support for MAP-T CE (VPP-1058)"

This reverts commit 0ae15ed43aaa600a75ca4c154bc62478820c00b4.

Re-add MAP CE support later. This patch polluted the code
with too many if (ce) ...

Change-Id: Ia0ffd6fdb452aa5d30abec57772c17fc16fb0dbd
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agoacl-plugin: optimize hash memory usage + fix the startup config parsing for memory... 70/16070/3
Andrew Yourtchenko [Wed, 21 Nov 2018 07:56:53 +0000 (08:56 +0100)]
acl-plugin: optimize hash memory usage + fix the startup config parsing for memory sizes [VPP-1502]

In a couple of places vec_add1()-style was repeatedly called in a loop for
smallish vectors where the number of additions was known in advance.
With a test with large number of ACEs these numbers contribute to heap
fragmentation noticeably.

Minimize the number of allocations by preallocating the known size and
then resetting the length accordingly, and then calling vec_add1()

Also unify the parsing of the memory-related startup config parameters.

Change-Id: If8fba344eb1dee8f865ffe7b396ca3b6bd9dc1d0
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
5 years agovhost-user: hint ethernet-input about single sw_if_index 72/16072/2
Damjan Marion [Wed, 21 Nov 2018 08:54:41 +0000 (09:54 +0100)]
vhost-user: hint ethernet-input about single sw_if_index

Change-Id: Ia495f8f50c43baf0d6eeb8e9ba04314ce277286f
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agovhost-user: avoid per-packet feature arc lookups 71/16071/2
Damjan Marion [Wed, 21 Nov 2018 08:51:42 +0000 (09:51 +0100)]
vhost-user: avoid per-packet feature arc lookups

Change-Id: If96f5a7c7e4b511cab3d57e5b57796aa516aff11
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agovhost-user: fix input node runtime stats 19/16119/1
Damjan Marion [Thu, 22 Nov 2018 14:45:54 +0000 (15:45 +0100)]
vhost-user: fix input node runtime stats

Change-Id: Idda43d1236889ef91d8c37faf98ae23a19de688c
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoRevert "Fix instance method call in test/framework.py" 13/16113/1
Ole Trøan [Thu, 22 Nov 2018 10:01:09 +0000 (10:01 +0000)]
Revert "Fix instance method call in test/framework.py"

This reverts commit c32023b9fd6970ed1cac1b3c7f36233b536d9968.

Change-Id: Ic934d223b10028093b0262e28515bde3ae1ccb71
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agoFix instance method call in test/framework.py 06/16106/3
Paul Vinciguerra [Wed, 21 Nov 2018 17:54:50 +0000 (09:54 -0800)]
Fix instance method call in test/framework.py

Instance method breaking encapsulation by calling a global fn.

Change-Id: Ifde2a207951143764aed75f1b191aed0bac83704
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
5 years agostat_client issues while running parallel tests. 09/16109/2
Paul Vinciguerra [Thu, 22 Nov 2018 00:34:09 +0000 (16:34 -0800)]
stat_client issues while running parallel tests.

This patch addresses intermittent problems we saw in our CI while running parallel tests.

Change-Id: Icb5fdb34cc134e3eb341225d56ab67fbbef80b0d
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
5 years agoAdd RFC5424 syslog protocol support (VPP-1139) 21/16021/2
Matus Fabian [Mon, 19 Nov 2018 12:25:32 +0000 (04:25 -0800)]
Add RFC5424 syslog protocol support (VPP-1139)

Syslog protocol logging transport event messages across network over UDP
protocol based on RFC5426.

Change-Id: Ica74b40bcc2e6d0fbd41e9bf78e76395fbabab3c
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agostats: golang vpp_if_stats_client 01/16101/4
Koren Lev [Wed, 21 Nov 2018 16:46:54 +0000 (18:46 +0200)]
stats: golang vpp_if_stats_client

see README for details

Change-Id: Ida603ccaee21dabc903512699b5b355cebb70320
Signed-off-by: Koren Lev <korenlev@gmail.com>
5 years agoNAT44: Apply transitory timeout on TCP RST (VPP-1494) 94/16094/2
Matus Fabian [Wed, 21 Nov 2018 12:53:10 +0000 (04:53 -0800)]
NAT44: Apply transitory timeout on TCP RST (VPP-1494)

RFC7857 section 2.2.

Change-Id: I031af5fe379b72262e83fd8565c34fa1b772f2c8
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agodpdk: don't shift flags twice 88/16088/1
Damjan Marion [Wed, 21 Nov 2018 11:52:12 +0000 (12:52 +0100)]
dpdk: don't shift flags twice

Change-Id: I3555230ef7b7677d6187282fb0c0f02af216e0a0
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoVPP-1309: fixed crash when listing ip arp after removing interface 24/15924/5
Pavel Kotucek [Wed, 14 Nov 2018 08:24:16 +0000 (09:24 +0100)]
VPP-1309: fixed crash when listing ip arp after removing interface

Change-Id: I8f88214eab0535573863f31d2c21e2239a811921
Signed-off-by: Pavel Kotucek <pavel.kotucek@pantheon.tech>
5 years agosession: improve app cli 66/16066/4
Florin Coras [Wed, 21 Nov 2018 00:52:49 +0000 (16:52 -0800)]
session: improve app cli

Change-Id: I766c0b2bfd5f781e4fe5df615a7ecd139b7d2cc4
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agosession: cleanup use of api_client_index 61/16061/5
Florin Coras [Tue, 20 Nov 2018 19:31:26 +0000 (11:31 -0800)]
session: cleanup use of api_client_index

Change-Id: I8a680be62ab91d2ccb144641981a635506973a49
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoethernet-input: fix assert in l2 mode 64/16064/2
Damjan Marion [Tue, 20 Nov 2018 23:47:42 +0000 (00:47 +0100)]
ethernet-input: fix assert in l2 mode

Change-Id: I3befc762694e7c6d6847c361a144f72547038ba1
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoAdd wireshark dissector to extras 65/16065/1
Dave Barach [Wed, 21 Nov 2018 01:15:37 +0000 (20:15 -0500)]
Add wireshark dissector to extras

See extras/wireshark/readme.md for a quick writeup.

Change-Id: Id48d198aa2f1d643d0587947fe9c3fd62b613a9f
Signed-off-by: Dave Barach <dbarach@cisco.com>
5 years agoAdd buffer tracing to the dispatch tracer 60/16060/3
Dave Barach [Tue, 20 Nov 2018 17:08:39 +0000 (12:08 -0500)]
Add buffer tracing to the dispatch tracer

Change-Id: I56f25d653b71a25c70e6c5c1a93dd9c5158f2079
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agomemif input-node improvements 54/16054/3
Damjan Marion [Tue, 20 Nov 2018 13:20:15 +0000 (14:20 +0100)]
memif input-node improvements

Change-Id: Ida2262238c0558d8340f05c678a84e76f990935d
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoethernet-input optimizations 42/15842/16
Damjan Marion [Wed, 14 Nov 2018 15:55:53 +0000 (16:55 +0100)]
ethernet-input optimizations

Change-Id: I4ec7750ef58363bd8966a16a2baeec6db18b7e9e
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agovhost-user: cleanup 62/16062/2
Damjan Marion [Tue, 20 Nov 2018 20:07:03 +0000 (21:07 +0100)]
vhost-user: cleanup

Change-Id: Ibf68423e9514b8e85cdf0a3e57ababd55dd4fcc4
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoIPSEC: remove duplicate memcy 59/16059/2
Neale Ranns [Tue, 20 Nov 2018 17:06:25 +0000 (09:06 -0800)]
IPSEC: remove duplicate memcy

Change-Id: If91257fa23ba74c09e5c3b5528eb2fd4c4b36b6a
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agomake test: Shorten VCL extended test times 15/13215/9
Dave Wallace [Tue, 26 Jun 2018 05:14:04 +0000 (01:14 -0400)]
make test: Shorten VCL extended test times

- And include them in regular CI testing

Change-Id: I519fd07e1482baf6808601b3c928b825f9691c87
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
5 years agoFix inspection for 18.10, requirements 58/16058/2
jdenisco [Tue, 20 Nov 2018 16:25:17 +0000 (11:25 -0500)]
Fix inspection for 18.10, requirements

Change-Id: I1ecc278f43afff184a26f6f18fe22a49d8916eb1
Signed-off-by: jdenisco <jdenisco@cisco.com>
5 years agoLink speed sent as little endian across API 46/16046/3
Ole Troan [Tue, 20 Nov 2018 10:03:10 +0000 (11:03 +0100)]
Link speed sent as little endian across API

Change-Id: I03c991cbf13c6d3599bfb5a60b18dc8ec9390414
Signed-off-by: Ole Troan <ot@cisco.com>
5 years agoacl-plugin: performance optimizations for established connections 08/14708/12
Andrew Yourtchenko [Thu, 25 Oct 2018 16:49:45 +0000 (18:49 +0200)]
acl-plugin: performance optimizations for established connections

Change-Id: Id5b7429ca7cce10ce8022c9b8a223bd02f6c3b5f
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
5 years agoNAT44: fix virtual fragmentation reassembly in forwarding mode (VPP-1501) 48/16048/2
Matus Fabian [Tue, 20 Nov 2018 10:19:05 +0000 (02:19 -0800)]
NAT44: fix virtual fragmentation reassembly in forwarding mode (VPP-1501)

Change-Id: Id86d8aa8753b9b2ff4c709b11e3901ba8d552918
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agovlib: reset frame flags when frame is reused 42/16042/2
Damjan Marion [Tue, 20 Nov 2018 08:55:10 +0000 (09:55 +0100)]
vlib: reset frame flags when frame is reused

Change-Id: I8f4843e7a961a1e6c3fd057554b31ae49fc9b328
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agovom: Add support for redirect contracts in gbp 13/16013/5
Mohsin Kazmi [Sun, 18 Nov 2018 23:12:11 +0000 (00:12 +0100)]
vom: Add support for redirect contracts in gbp

Change-Id: I18543785166811ddbd628d19065d3dfad3f948e9
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agovlib: add vlib_buffer_enqueue_to_single_next(...) function 43/16043/2
Damjan Marion [Tue, 20 Nov 2018 08:56:01 +0000 (09:56 +0100)]
vlib: add vlib_buffer_enqueue_to_single_next(...) function

Change-Id: I485dd07ea0fe032bdd5990567578e73e9bcffe1e
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agovppinfra: add 128 and 256 bit vector scatter/gather inlines 44/16044/3
Damjan Marion [Tue, 20 Nov 2018 09:06:57 +0000 (10:06 +0100)]
vppinfra: add 128 and 256 bit vector scatter/gather inlines

Change-Id: If6c65f16c6fba8beb90e189c1443c3d7d67ee02c
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agodhcp4:(VPP-1483) linearize chained packets before handling 59/15759/6
Eyal Bari [Mon, 5 Nov 2018 11:29:25 +0000 (13:29 +0200)]
dhcp4:(VPP-1483) linearize chained packets before handling

dhcp packets might (when flooded) arrive in chains of cloned buffers

Change-Id: Ifddecd656b6a5d6ba8cd94184f5c021684e35548
Signed-off-by: Eyal Bari <ebari@cisco.com>
5 years agoVPP-1498: test/framework.py: AttributeError 10/16010/2
Paul Vinciguerra [Sun, 18 Nov 2018 16:17:34 +0000 (08:17 -0800)]
VPP-1498: test/framework.py: AttributeError

Traceback if .send_keep_alive is called before pipe is configured.

Traceback (most recent call last):
      File "/vpp/test/test_span.py", line 27, in setUpClass
        super(TestSpan, cls).setUpClass()
      File "/vpp/test/framework.py", line 411, in setUpClass
        cls.reporter.send_keep_alive(cls, 'setUpClass')
      File "/vpp/test/framework.py", line 172, in send_keep_alive
        if self.pipe is None:
      File "/vpp/test/framework.py", line 160, in pipe
        return self._pipe
    AttributeError: 'KeepAliveReporter' object has no attribute '_pipe'

Change-Id: I561d2748441702478a84fbb4580a4d2667d70ffd
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
5 years agoImprove feature arc order constraint specification 34/16034/2
Dave Barach [Mon, 19 Nov 2018 14:31:48 +0000 (09:31 -0500)]
Improve feature arc order constraint specification

Add the VNET_FEATURE_ARC_ORDER macro, which allows specification of
bulk order constraints. Here's an example:

VNET_FEATURE_ARC_ORDER(ip4_unicast_arc_order, static) = {
  .arc_name = "ip4-unicast",
  .node_names = VNET_FEATURES ("ip4-flow-classify",
                               "ip4-inacl",
                               "ip4-source-check-via-rx",
                               "ip4-source-check-via-any",
                               "ip4-source-and-port-range-check-rx",
                               "ip4-policer-classify",
                               "ipsec4-input",
                               "vpath-input-ip4",
                               "ip4-vxlan-bypass",
                               "ip4-not-enabled",
                               "ip4-lookup"),
};

Simply list feature nodes in the desired order, and you're
done. Multiple macro instances per are are fine / expected /
tested.

Under the covers: generate "a before b" tuples by chain-dragging
across the ordered list. No need to touch existing per-feature
constraints.

Fixed a long-broken "you lose!" error message.

Change-Id: I259282e426fd305e22c8d65886787c41a1d348d3
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoNAT44: fix bug in TCP close with output-feature interface (VPP-1493) 98/15998/2
Matus Fabian [Fri, 16 Nov 2018 12:41:31 +0000 (04:41 -0800)]
NAT44: fix bug in TCP close with output-feature interface (VPP-1493)

Change-Id: If8c883d6b1ee58de9a03012d3567ec82211a0225
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoadd vlib_prefetch_buffer_data(...) macro 12/16012/1
Damjan Marion [Sun, 18 Nov 2018 22:48:43 +0000 (23:48 +0100)]
add vlib_prefetch_buffer_data(...) macro

Change-Id: Iba750a41262cc028ad0363fff78cc219e4a33538
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoEnable l4 checksum offload for ThunderX PMD 66/15966/3
Federico Claramonte [Thu, 15 Nov 2018 12:19:29 +0000 (13:19 +0100)]
Enable l4 checksum offload for ThunderX PMD

Change-Id: I6a6ab6d8d9aeca9df3ba8a3ac519be25aaa796e8
Signed-off-by: Federico Claramonte <fede.claramonte@caviumnetworks.com>
5 years agovcl/session: apps with process workers 17/15917/17
Florin Coras [Tue, 13 Nov 2018 23:52:38 +0000 (15:52 -0800)]
vcl/session: apps with process workers

Allow apps to register child processes as app workers. In particular,
on fork vcl now registers the child process with vpp as a new worker.

Change-Id: I52a65fbc3292962b1f6e1fe0f6153f739e6e0d4a
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoComplain if a client binary API queue is full 11/16011/2
Dave Barach [Sun, 18 Nov 2018 17:03:48 +0000 (12:03 -0500)]
Complain if a client binary API queue is full

Definitely indicates a client binary API queue handling issue. We
can't simply turf the message, or we'll end up with a more subtle
derivative misbehavior.

Change-Id: I6363fda1430b0a9ec33ad69badc1e0072fe20fa8
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agomac_address_t: size to 6 bytes so it represents wire format 00/16000/3
Neale Ranns [Fri, 16 Nov 2018 13:20:36 +0000 (05:20 -0800)]
mac_address_t: size to 6 bytes so it represents wire format

Change-Id: I4d6b505a2b1e0cb960a4145796351ad1bc7e860d
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agopcap-based dispatch tracer 05/16005/2
Dave Barach [Fri, 16 Nov 2018 22:19:00 +0000 (17:19 -0500)]
pcap-based dispatch tracer

To facilitate dispatch trajectory tracing, vlib_buffer_t decoding, etc.
through Wireshark

Change-Id: I31356b9fa1f40cba8830aaf10a86a9fbb7546438
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoldp: fixes/improvements to select 07/16007/2
Florin Coras [Sat, 17 Nov 2018 02:56:28 +0000 (18:56 -0800)]
ldp: fixes/improvements to select

Change-Id: I3f3e8fce01309da02689c7e9d23cf1b3181e78c9
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoIP-punt: add documentation to the API and fix IP address init 91/15991/2
Neale Ranns [Fri, 16 Nov 2018 08:53:53 +0000 (00:53 -0800)]
IP-punt: add documentation to the API and fix IP address init

Change-Id: I0bdff4dbfd81d67e82211ce9fdc97209a1b23c66
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoVPP-1496 Cleanup stats socket on exit. 71/15971/3
Paul Vinciguerra [Thu, 15 Nov 2018 15:14:27 +0000 (07:14 -0800)]
VPP-1496 Cleanup stats socket on exit.

Stats socket not cleaned up on exit.

vagrant@vpp:/tmp/vpp-failed-unittests/vpp-unittest-VCLCutThruTestCase-clRggF-FAILED$ ls -ltr

total 104

srwxrwxr-x 1 vagrant vagrant     0 Nov 14 18:21 stats.sock

Change-Id: I8126e70da2983222ca430aa280f3b9e45eea7ca4
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
5 years agoVPP-1495: Fix intermittent stat sock test failures. 73/15973/4
Paul Vinciguerra [Thu, 15 Nov 2018 16:13:03 +0000 (08:13 -0800)]
VPP-1495: Fix intermittent stat sock test failures.

Loosen polling loop while waiting for stats socket.

==============================================================================
Classifier IP6 UDP proto Test Case
==============================================================================
connect: No such file or directory
==============================================================================
ERROR: setUpClass (test_ip4.TestIPLoadBalance)
------------------------------------------------------------------------------
Traceback (most recent call last):
  File "/vpp/test/framework.py", line 424, in setUpClass
    cls.statistics = VPPStats(socketname=cls.stats_sock)
  File "build/bdist.linux-x86_64/egg/vpp_papi/vpp_stats.py", line 120, in _init_
    raise IOError()
IOError

Change-Id: I80523122f96eafc41b3ebbf27bee73f6c637d781
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
5 years agoQoS: fix always recoding as IP 53/15953/2
Neale Ranns [Thu, 15 Nov 2018 07:46:12 +0000 (07:46 +0000)]
QoS: fix always recoding as IP

Change-Id: I7a54cdfa26652c04971999ad1f8144566e13c7bf
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoGBP: redirect contracts 07/15807/9
Neale Ranns [Wed, 7 Nov 2018 17:25:54 +0000 (09:25 -0800)]
GBP: redirect contracts

Change-Id: I463b153de93cfec29a9c15e8e84e41f6003d4c5f
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoVPP-1474: fix 2x coverity warnings 46/15946/2
Dave Barach [Wed, 14 Nov 2018 16:42:03 +0000 (11:42 -0500)]
VPP-1474: fix 2x coverity warnings

Change-Id: I441beaf3d7f57886580d7cce35ef592aa0fcca5f
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agoacl-plugin: fix coverity error 188909 in unit-test code 38/15938/2
Andrew Yourtchenko [Wed, 14 Nov 2018 15:39:39 +0000 (16:39 +0100)]
acl-plugin: fix coverity error 188909 in unit-test code

The assignment was redundant with a one just a dozen lines above
in the case of the ACL loaded being non-empty, so its only
apparent purpose in life was make coverity unhappy...
Thus fix by deletion.

Change-Id: I573308cb9c212bdfdca2551aa381720dbbcb006e
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
5 years agoip4-input: fix prefetch data issue for tunnel decap cases 57/15757/4
Zhiyong Yang [Wed, 7 Nov 2018 05:04:28 +0000 (00:04 -0500)]
ip4-input: fix prefetch data issue for tunnel decap cases

There are two reasons to modify the existing code ip4_input_inline.

1. For many tunnel decap cases, inner ip header or its part is possible
in the second cacheline, not first cacheline only after the field "data",
and this will cause data cache miss once the second cacheline is needed
to access. e.g vxlan-gpe.
2. For most of cases, "data" is the starting address of ethernet
header, not IP header. The existing code causes misunderstanding
from code readability perspective.

Change-Id: I43e119b899dbde95803bccbac54259729fd2cddf
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Signed-off-by: Yuwei Zhang <yuwei1.zhang@intel.com>
5 years agoipsec: infra for selecting backends 23/15823/10
Klement Sekera [Thu, 8 Nov 2018 12:00:02 +0000 (13:00 +0100)]
ipsec: infra for selecting backends

Change-Id: Ifa6d8391b1b2413a88b7720fc434e0bc849a149a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
5 years agosession: fix endpt cfg test (VPP-1492) 47/15947/5
Florin Coras [Wed, 14 Nov 2018 17:32:07 +0000 (09:32 -0800)]
session: fix endpt cfg test (VPP-1492)

Change-Id: I0f2266c4727a96b6410a3084dc079bae7bc649ab
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoVXLAN-GBP: c-n-p error in the dual-loop tracing 40/15940/2
Neale Ranns [Wed, 14 Nov 2018 16:18:12 +0000 (08:18 -0800)]
VXLAN-GBP: c-n-p error in the dual-loop tracing

Change-Id: I3722a1850f7a72e4382e351120c1514d7a1759b8
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoVPP-1477: Replace DatatypeConverter.printHexBinary with bytesToHex 33/15933/4
Michal Cmarada [Wed, 14 Nov 2018 13:05:42 +0000 (14:05 +0100)]
VPP-1477: Replace DatatypeConverter.printHexBinary with bytesToHex

As of Java 11 javax.xml.bind.DatatypeConverter is no longer part of
standard Java distribution, therefore it is replaced by equivalent method.

Change-Id: I51726d0d0d02782bd3bb1dbdc54df5bd63bd8f15
Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
5 years agoRemove c-11 memcpy checks from perf-critical code 16/15916/4
Dave Barach [Tue, 13 Nov 2018 21:34:13 +0000 (16:34 -0500)]
Remove c-11 memcpy checks from perf-critical code

Change-Id: Id4f37f5d4a03160572954a416efa1ef9b3d79ad1
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agovcl/ldp: fix poll 18/15918/4
Florin Coras [Wed, 14 Nov 2018 06:44:54 +0000 (22:44 -0800)]
vcl/ldp: fix poll

Change-Id: I8eb5546ff8634d5498d8ce5bbc9407bceb9ae3ef
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agodocs and Config utility, package cloud support 11/15911/2
jdenisco [Tue, 13 Nov 2018 17:40:12 +0000 (12:40 -0500)]
docs and Config utility, package cloud support

Change-Id: I61303242b73e509df42dedba54f2ee5906a7e526
Signed-off-by: jdenisco <jdenisco@cisco.com>
5 years agotcp: cubic improvements 95/15895/3
Florin Coras [Tue, 13 Nov 2018 08:03:43 +0000 (00:03 -0800)]
tcp: cubic improvements

- avoid cwnd excessive increments on threshold changes
- fix K computation when fastconvergence is on

Change-Id: I99c36abc879e63aecc0617f7aed5a2f68430ba71
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agotcp: cubic fast convergence 92/15892/7
Florin Coras [Mon, 12 Nov 2018 17:13:10 +0000 (09:13 -0800)]
tcp: cubic fast convergence

Change-Id: I3a15960fe346763faf13e8728ce36c2f3bf7b05a
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agovlib:remove unused argument 56/15856/2
Eyal Bari [Mon, 12 Nov 2018 14:13:49 +0000 (16:13 +0200)]
vlib:remove unused argument

Change-Id: I88c3d3e516401bb1c84991515cd701c156ae19dd
Signed-off-by: Eyal Bari <ebari@cisco.com>
5 years agoipsec: fix typo 01/15901/4
Klement Sekera [Mon, 12 Nov 2018 13:42:00 +0000 (14:42 +0100)]
ipsec: fix typo

Change-Id: I04c59bbe1780e7289cb27a0a912803812fdc297e
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agojapi: Move Java API binding to cmake 47/15047/9
Mohsin Kazmi [Thu, 13 Sep 2018 07:59:50 +0000 (09:59 +0200)]
japi: Move Java API binding to cmake

Change-Id: I264d547a06e3636d021a74cd26efb8137f629cbc
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
5 years agoIGMP: improve CLI debug output 08/15908/2
Neale Ranns [Tue, 13 Nov 2018 13:27:18 +0000 (13:27 +0000)]
IGMP: improve CLI debug output

Change-Id: If88fc3acdba1f73b3e8be94d8014556c5239596c
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoL2 feautre bitmaps output verbose/non-verbose mode 51/15851/2
Neale Ranns [Fri, 9 Nov 2018 16:19:27 +0000 (08:19 -0800)]
L2 feautre bitmaps output verbose/non-verbose mode

Change-Id: I15ff191ee8724a3354c074db590472db05e0652e
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agovlib rename vlib_frame_args(...) to vlib_frame_scalar_args(..) 97/15897/2
Damjan Marion [Sat, 10 Nov 2018 09:23:00 +0000 (10:23 +0100)]
vlib rename vlib_frame_args(...) to vlib_frame_scalar_args(..)

Typically we have scalar_size == 0, so it doesn't matter
but vlib_frame_args was providing pointer to scalar frame
data, not vector data. To avoid future confusion function
is renamed to vlib_frame_scalar_args(...)

Change-Id: I48b75523b46d487feea24f3f3cb10c528dde516f
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agotcp: handle disconnects after enq notifications 45/15845/4
Florin Coras [Fri, 9 Nov 2018 22:34:08 +0000 (14:34 -0800)]
tcp: handle disconnects after enq notifications

Make sure that we notify the app of the data enqueued in the burst
before notifying of disconnect.

Change-Id: I7747a5cbb4c6bc9132007f849c24ce04b7841273
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agodocs: add 1810, including package cloud 43/15843/2
jdenisco [Fri, 9 Nov 2018 20:20:26 +0000 (15:20 -0500)]
docs: add 1810, including package cloud

Change-Id: Ieae5fc7c1e099392bc2a4e5948669d9210f2ebac
Signed-off-by: jdenisco <jdenisco@cisco.com>
5 years agoIPv6: Make link-local configurable per-interface (VPP-1446) 03/15503/4
Juraj Sloboda [Mon, 22 Oct 2018 07:57:13 +0000 (09:57 +0200)]
IPv6: Make link-local configurable per-interface (VPP-1446)

Remove old nonfunctional code for setting link-local addresses.
Use common API for setting all IPv6 addresses.

Change-Id: I562329df86341f81ef2441510a9eefbbf710f6e0
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoproxy-app: fix active connect 44/15844/3
Florin Coras [Fri, 9 Nov 2018 21:40:02 +0000 (13:40 -0800)]
proxy-app: fix active connect

Change-Id: Ib55684dd3f1d39f5436d6feb2fb105583027493c
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agopmalloc: u32 pp->index leads to va address overrun 47/15847/1
Kingwel Xie [Sat, 10 Nov 2018 07:56:00 +0000 (02:56 -0500)]
pmalloc: u32 pp->index leads to va address overrun

when pagesize is 1G, this pm->base + (pp->index << pm->def_log2_page_sz) would very soon overrun if creating multiple mempools
add a (uword) to it

Change-Id: If769b99d344cc3f547418a242a7497d044071615
Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com>
5 years agoFix logging into multiple files 37/15837/2
juraj.linkes [Fri, 9 Nov 2018 10:58:54 +0000 (11:58 +0100)]
Fix logging into multiple files

When running tests in one process, only one logger was used and each
testcase added its own file handler, which resulted in logs appearing in
multiple files. Fix this by restoring the creation of new loggers
for each testcase and only reuse the stream handler from parent process.

Change-Id: I5b8471e041dc769128fddb433d33812bfcb5ecf6
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
5 years agodpdk: configure ip4 header checksum rx offload properly 46/15846/1
Damjan Marion [Fri, 9 Nov 2018 22:30:20 +0000 (23:30 +0100)]
dpdk: configure ip4 header checksum rx offload properly

Change-Id: I3daf8d473aa37b4597d130d19913b782cf7b8511
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoGBP: Fix error-strings array in gbp-vxlan4 41/15841/1
Neale Ranns [Fri, 9 Nov 2018 14:45:21 +0000 (06:45 -0800)]
GBP: Fix error-strings array in gbp-vxlan4

Change-Id: I36c2fa33cdc1db9a6af9b48c99e281abd8af1b6e
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agotcp: separate unit and throughput tests 33/15833/4
Florin Coras [Thu, 8 Nov 2018 21:58:19 +0000 (13:58 -0800)]
tcp: separate unit and throughput tests

Change-Id: I249e68874dcf38b07179e0e769f6eb49a43377b7
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agotcp: basic cubic implementation 79/14979/22
Florin Coras [Tue, 25 Sep 2018 21:00:34 +0000 (14:00 -0700)]
tcp: basic cubic implementation

Because the code is not optimized, newreno is still the default
congestion control algorithm.

Change-Id: I7061cc80c5a75fa8e8265901fae4ea2888e35173
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agovnet: remove unused field 30/15830/2
Damjan Marion [Thu, 8 Nov 2018 18:45:27 +0000 (19:45 +0100)]
vnet: remove unused field

It is not used and just confuses people...

Change-Id: Ic731432a785731271531f183b448e4591a1d2a8b
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoCalculate clock rounding constant 11/15811/2
Dave Barach [Wed, 7 Nov 2018 22:40:19 +0000 (17:40 -0500)]
Calculate clock rounding constant

Compute the first power of ten which is greater than 0.1% of the clock
rate. Save the result, and use it to round future results. The
previous constant value - 1e7 - didn't work properly on aarch64.

Change-Id: Ic021e3eb1b90c0d4a7d9f1b6425123f0c8b48b0b
Signed-off-by: Dave Barach <dave@barachs.net>
5 years agovnet: store hw interface speed in kbps instead of using flags 28/15828/4
Damjan Marion [Thu, 8 Nov 2018 14:30:16 +0000 (15:30 +0100)]
vnet: store hw interface speed in kbps instead of using flags

Change-Id: Idd4471a3adf7023e48e85717f00c786b1dde0cca
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoIP load-balance; trace at the end of the node so the flow hash used is displayed 29/15829/2
Neale Ranns [Thu, 8 Nov 2018 15:31:36 +0000 (07:31 -0800)]
IP load-balance; trace at the end of the node so the flow hash used is displayed

Change-Id: Idbce0393fc9e6e8dbb2765ed164ba7f90d1ffccc
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoavf: update virtchnl header file 27/15827/2
Damjan Marion [Thu, 8 Nov 2018 13:55:07 +0000 (14:55 +0100)]
avf: update virtchnl header file

Change-Id: I755525d953605561477eeb2252ef38c60000c70a
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agophysmem: Add physmem map support 06/15806/3
Mohsin Kazmi [Wed, 7 Nov 2018 15:55:18 +0000 (16:55 +0100)]
physmem: Add physmem map support

This patch adds support for mapping the virtual address to physical
address and size of memory allocated.

Change-Id: I7659a1881308e89b215c486fecd7c973076d0773
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
5 years agotlsopenssl: remove unused #include 22/15822/2
Klement Sekera [Thu, 8 Nov 2018 12:06:24 +0000 (13:06 +0100)]
tlsopenssl: remove unused #include

Change-Id: I294e4f93e925c58765d4692337208fcee7d12886
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agomake test: remove unnecessary check 21/15821/2
Klement Sekera [Thu, 8 Nov 2018 12:05:37 +0000 (13:05 +0100)]
make test: remove unnecessary check

Change-Id: I90ee144a5c5a2e753e36d45c0ce98c9a8b477f15
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agomake test: bfd refactor 17/15817/4
Klement Sekera [Thu, 8 Nov 2018 10:52:04 +0000 (11:52 +0100)]
make test: bfd refactor

Change-Id: I14a126521d8c8138904c8b9da05d4144c72c51a5
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agomake test: rename dummy test name 16/15816/2
Klement Sekera [Thu, 8 Nov 2018 10:49:04 +0000 (11:49 +0100)]
make test: rename dummy test name

Change-Id: I5727b08bdc8bdaaf83a9f08d171d76bd6f67564e
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agomake test: p2p ethernet refactor 15/15815/3
Klement Sekera [Thu, 8 Nov 2018 10:24:34 +0000 (11:24 +0100)]
make test: p2p ethernet refactor

Change-Id: I48b4b3eaa84e4174e4d0305594675bf983184fa0
Signed-off-by: Klement Sekera <ksekera@cisco.com>
5 years agotcp: pacer and mrtt estimation improvements 08/15808/8
Florin Coras [Wed, 7 Nov 2018 20:49:19 +0000 (12:49 -0800)]
tcp: pacer and mrtt estimation improvements

- update pacer once per burst
- better estimate initial rtt
- compute smoothed average for higher precision rtt estimate

Change-Id: I06d41a98784cdf861bedfbee2e7d0afc0d0154ef
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agovlib: use index to free suspended frame 12/15812/2
Florin Coras [Thu, 8 Nov 2018 04:46:38 +0000 (20:46 -0800)]
vlib: use index to free suspended frame

Avoids crash if suspended_process_frames grows.

Change-Id: Id26ef0dd0dd001b997c531c4dec004e7e7989670
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoGBP: fix for coverity found errors 14/15814/2
Neale Ranns [Thu, 8 Nov 2018 08:13:58 +0000 (00:13 -0800)]
GBP: fix for coverity found errors

Change-Id: Id69678adb578b323ae18034d1b1fddb7417bcc08
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agopmalloc: fix shared mappings 05/15805/1
Damjan Marion [Wed, 7 Nov 2018 16:55:26 +0000 (17:55 +0100)]
pmalloc: fix shared mappings

Change-Id: I6782544d5ee0a66b1a027874b23574416093ca92
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoVOM: GBP missing header file exports 75/15775/2
Neale Ranns [Wed, 7 Nov 2018 12:03:13 +0000 (04:03 -0800)]
VOM: GBP missing header file exports

Change-Id: I24a894bde170669a05f1a7d58afc70524538f060
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoGBP: Endpoints with VLAN tags and birdges that don't learn 86/15786/2
Neale Ranns [Wed, 7 Nov 2018 12:21:12 +0000 (04:21 -0800)]
GBP: Endpoints with VLAN tags and birdges that don't learn

Change-Id: I20192f3a8f4f01f47e775746f6fde7c685f185ee
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agotcp: consume incoming buffers instead of reusing 33/15733/12
Florin Coras [Mon, 5 Nov 2018 23:57:21 +0000 (15:57 -0800)]
tcp: consume incoming buffers instead of reusing

Instead of reusing buffers for acking, consume all buffers and program
output for (dup)ack generation. This implicitly fixes the drop counters
that were artificially inflated by both data and feedback traffic.

Moreover, the patch also significantly reduces the ack traffic as we now
only generate an ack per frame, unless duplicate acks need to be sent.

Because of the reduced feedback traffic, a sender's rx path and a
receiver's tx path are now significantly less loaded. In particular, a
sender can overwhelm a 40Gbps NIC and generate tx drop bursts for low
rtts. Consequently, tx pacing is now enforced by default.

Change-Id: I619c29a8945bf26c093f8f9e197e3c6d5d43868e
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 years agoOptimize xxx_zero_byte_mask NEON function 56/15756/2
Lijian Zhang [Wed, 31 Oct 2018 05:35:20 +0000 (13:35 +0800)]
Optimize xxx_zero_byte_mask NEON function

Optimize zero byte mask NEON functions below with less intrinsics,
and get their outputs consistent with functions in vector_sse42.h

always_inline u32 u64x2_zero_byte_mask (u64x2 input)
always_inline u32 u32x4_zero_byte_mask (u32x4 input)
always_inline u32 u16x8_zero_byte_mask (u16x8 input)
always_inline u32 u8x16_zero_byte_mask (u8x16 input)
always_inline u32 i64x2_zero_byte_mask (i64x2 input)
always_inline u32 i32x4_zero_byte_mask (i32x4 input)
always_inline u32 i16x8_zero_byte_mask (i16x8 input)
always_inline u32 i8x16_zero_byte_mask (i8x16 input)

Change-Id: I7f485915baeb37fa2dd484699b8769e0136f6574
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Reviewed-by: Sirshak Das <Sirshak.Das@arm.com>
5 years agol2: convert l2_patch to new multiarch scheme 40/15740/2
Damjan Marion [Tue, 6 Nov 2018 12:33:27 +0000 (13:33 +0100)]
l2: convert l2_patch to new multiarch scheme

Change-Id: I30487bd736407378fb5a6d313e4eef12bbb262b8
Signed-off-by: Damjan Marion <damarion@cisco.com>
5 years agoGBP Endpoint Learning 23/15223/12
Neale Ranns [Wed, 10 Oct 2018 14:22:51 +0000 (07:22 -0700)]
GBP Endpoint Learning

Learning GBP endpoints over vxlan-gbp tunnels

Change-Id: I1db9fda5a16802d9ad8b4efd4e475614f3b21502
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
5 years agoNAT44: fix undesired dependency between static mapping and address from the pool... 58/15758/2
Matus Fabian [Wed, 7 Nov 2018 07:17:31 +0000 (23:17 -0800)]
NAT44: fix undesired dependency between static mapping and address from the pool (VPP-1485)

Change-Id: Iaa404361eac2a6612dcdaba3f73bae41a35c5446
Signed-off-by: Matus Fabian <matfabia@cisco.com>
5 years agoUnresolved symbols in libvapiclient 70/15770/1
Neale Ranns [Wed, 7 Nov 2018 10:20:36 +0000 (02:20 -0800)]
Unresolved symbols in libvapiclient

Change-Id: I6d6a73ac62f24928fb51e89948b92a1cb9134c40
Signed-off-by: Neale Ranns <nranns@cisco.com>
5 years agoUpdate the vpp config utility 54/15754/2
jdenisco [Tue, 6 Nov 2018 21:10:04 +0000 (16:10 -0500)]
Update the vpp config utility

Change-Id: If278d7c6dda9e29736f5aa6f1cb04b49da378509
Signed-off-by: jdenisco <jdenisco@cisco.com>