Dave Barach [Mon, 8 Jul 2019 16:25:38 +0000 (12:25 -0400)]
vppinfra: allocate bihash virtual space on demand
Reduces the vpp image virtual size by multiple gigabytes
Add a "show bihash" command which displays configured and current
virtual space in use by bihash tables.
Modify the .py test framework to call "show bihash" on test tear-down
Type: refactor
Change-Id: Ifc1b7e2c43d29bbef645f6802fa29ff8ef09940c
Signed-off-by: Dave Barach <dave@barachs.net>
Florin Coras [Mon, 8 Jul 2019 19:34:45 +0000 (12:34 -0700)]
vcl: add worker unregister api
Type:feature
Change-Id: Ie73644aed94e58d5dce822de5000183e414401df
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Mon, 8 Jul 2019 20:00:00 +0000 (13:00 -0700)]
vcl: cleanup listener accept fifo
Type: fix
Change-Id: Ic470d429f4bf1924185f720d66efe06f4727bcbd
Signed-off-by: Florin Coras <fcoras@cisco.com>
Paul Vinciguerra [Wed, 15 May 2019 01:01:28 +0000 (21:01 -0400)]
map gbp papi: match endianess of f64
clib_net_to_host_f64, clib_host_to_net_f64 are now implemented as '=',
https://gerrit.fd.io/r/#/c/20406/ set papi to match.
- all f64 api references are now wrapped with
clib_net_to_host_f64 or clib_host_to_net_f64.
IEEE f64 endianess is not defined. If clib_net_to_host_f64 and
clib_host_to_net_f64 are later defined in VPP as big-endian, it is
a single character change in the papi vpp_serializer.
Note: This breaks the api in a manner that would not be detected by
the flag day initiative. The scope is small. This only impacts map.api,
which applied the u64 transformation, while the gbp api uses '='.
The implementation of "=" raises issues for the papi socket implementation
if used between systems of differing endianess. See Vratko's comments.
- Added get_f64_endian_value() to api to allow client to verify endianess of f64's.
Type: fix
Depends-on: https://gerrit.fd.io/r/#/c/20484/
Change-Id: I00fc64a6557ba0190398df211aa0ea5c7eb101df
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Matthew Smith [Sun, 7 Jul 2019 00:27:29 +0000 (19:27 -0500)]
ip: retain local interface address adjacency
Type: feature
ip4_local_check_src() was overwriting vnet buffer opaque data
on the adjacency for packets with "local" (dpo-receive) destination
addresses.
Retain the dpo receive index in vnet_buffer()->adj_index[VLIB_TX].
This can allow a graph node to distinguish the interface where the
destination address is configured from the interface where the
packet was received. This can be useful in correctly handling
packets that have been sent to an address configured on a loopback
interface.
Change-Id: I52a942e85b5302b338a2d0404a37c5ea1a99e89f
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Nathan Skrzypczak [Thu, 4 Jul 2019 12:26:21 +0000 (14:26 +0200)]
session: add flag to disable session lookup
Type: feature
Change-Id: I1369859be0a722ea37e5d3ecb35dee5684fc69f8
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Neale Ranns [Fri, 14 Jun 2019 07:49:50 +0000 (07:49 +0000)]
gbp: More unit tests
Type: test
Change-Id: I0a58cc19bdfb73eabadbf6eb49b57e8db96959b5
Signed-off-by: Neale Ranns <nranns@cisco.com>
Nathan Skrzypczak [Fri, 5 Jul 2019 09:58:22 +0000 (11:58 +0200)]
session: target app.fib_index in unbind_uri
Type: fix
Change-Id: Iafcf85315c73bcd73af20bd84b1ccba030e2065b
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Paul Vinciguerra [Wed, 26 Jun 2019 02:30:19 +0000 (22:30 -0400)]
api: Implement log_dump/log_details
- Replaces the need to screen scrape "show log".
- Adds an api to return the system time. When running over a socket, the
api client may have different time than the vpp host.
expected use:
vpp_time_before_command = self.vapi.show_vpe_system_time_ticks().vpe_system_time_ticks
<run some commands>
log_output = self.vapi.log_dump(start_timestamp=vpp_time_before_command)
Depends-on: https://gerrit.fd.io/r/20484
Depends-on: https://gerrit.fd.io/r/#/c/19581/
==============================================================================
TestVpeApi
==============================================================================
log_details(_0=838, context=3, timestamp_ticks=2.
4954863503546518e+48, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'vlib_physmem_shared_map_create: clib_mem_create_hugetlb_fd: open: No such file or directory\n\n')
log_details(_0=838, context=3, timestamp_ticks=1.
6101902879480125e+159, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'falling back to non-hugepage backed buffer pool')
test_log_dump_default (test_vpe_api.TestVpeApi) OK
log_details(_0=838, context=13, timestamp_ticks=2.
4954863503546518e+48, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'vlib_physmem_shared_map_create: clib_mem_create_hugetlb_fd: open: No such file or directory\n\n')
log_details(_0=838, context=13, timestamp_ticks=1.
6101902879480125e+159, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'falling back to non-hugepage backed buffer pool')
test_log_dump_timestamp_0 (test_vpe_api.TestVpeApi) OK
test_log_dump_timestamp_future (test_vpe_api.TestVpeApi) SKIP
test_show_vpe_system_time_ticks (test_vpe_api.TestVpeApi) SKIP
==============================================================================
TEST RESULTS:
Scheduled tests: 4
Executed tests: 4
Passed tests: 2
Skipped tests: 2
==============================================================================
Test run was successful
Type: feature
Change-Id: I893fc0a65f39749d2091093c2c604659aadd8447
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Benoît Ganne [Wed, 3 Jul 2019 15:34:21 +0000 (17:34 +0200)]
gbp: refactor policy nodes
Refactor both policy and policy-dpo nodes so they share the same code
for contract & acl lookup and for tracing.
This should help to implement new policy schemes.
Type: refactor
Change-Id: If5704bda708838eb01516dd39473d9bf248cfdf6
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Damjan Marion [Sat, 29 Jun 2019 09:27:40 +0000 (11:27 +0200)]
misc: allow second ':' in commit message
Type: fix
Fixes:
26ce6ca
Change-Id: I3ffa1e60966ba3e20670a7b95bba53e86e9861e0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Neale Ranns [Thu, 4 Jul 2019 14:12:50 +0000 (14:12 +0000)]
vxlan-gbp: Decap ignores reserved bits
Type: fix
from the draft:
3. Backward Compatibility
VXLAN [RFC7348] requires reserved fields to be set to zero on
transmit and ignored on receive.
Change-Id: I98544907894f1a6eba9595a37c3c88322905630e
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Wed, 26 Jun 2019 15:22:01 +0000 (08:22 -0700)]
ethernet: ARP disabled node
Type: feature
improve the tracing from:
00:00:01:259665: pg-input
stream pcap3, 42 bytes, 3 sw_if_index
current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
request, type ethernet/IP4, address size 6/4
02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259690: ethernet-input
frame: flags 0x1, hw-if-index 3, sw-if-index 3
ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:259702: arp-input
request, type ethernet/IP4, address size 6/4
02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259710: error-drop
rx:pg2
00:00:01:259717: drop
null-node: blackholed packets
to
00:00:01:283323: pg-input
stream pcap3, 42 bytes, 3 sw_if_index
current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
request, type ethernet/IP4, address size 6/4
02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283348: ethernet-input
frame: flags 0x1, hw-if-index 3, sw-if-index 3
ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:283360: arp-input
request, type ethernet/IP4, address size 6/4
02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283369: arp-disabled
request, type ethernet/IP4, address size 6/4
02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283374: error-drop
rx:pg2
00:00:01:283380: drop
arp-disabled: ARP Disabled on this interface
Change-Id: I49b915b84cf56d6c138dedd8a596c045c150c4fb
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Wed, 26 Jun 2019 23:27:13 +0000 (16:27 -0700)]
sctp: move to plugins, disabled by default
Removed sctp buffer metadata from vnet/buffer.h, added it to the
plugin. Add registration APIs for plugin-based vlib_buffer_opaque /
opaque2 decoders, used by "pcap dispatch trace ..." for display in the
wireshark dissector.
Type:refactor
Not actively maintained.
Change-Id: Ie4cb6ba66f68b3b3a7d7d2c63c917fdccf994371
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
Vladimir Kropylev [Tue, 2 Jul 2019 08:25:26 +0000 (11:25 +0300)]
tcp: timestamp adjustment
Type: feature
Change-Id: Icb3c574100cde95ab5be4923c8739889cf7e48c6
Signed-off-by: Vladimir Kropylev <vladimir.kropylev@enea.com>
Benoît Ganne [Fri, 5 Jul 2019 09:29:39 +0000 (11:29 +0200)]
gbp: use bd index at ext-itf creation instead of bd id
Type: fix
Fixes:
cfc7a107e6cb8be6e7c53a08e23a146c431c8e90
Change-Id: I341cbc94271ab89c3c643756a9c04b790cef8591
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Fri, 5 Jul 2019 00:05:59 +0000 (17:05 -0700)]
tcp: add cc algo start tx event
Type: feature
Notify cc algos that new data is sent on a connection that was
apparently idle.
Change-Id: I892e5e9bb5b88d791265ffbbefce6f9694d01970
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Thu, 4 Jul 2019 02:51:02 +0000 (19:51 -0700)]
tcp: add cc algo undo recovery notification
Type:feature
Change-Id: Iedefe87555f0a0033abed8569bc2995c8f523d7e
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Thu, 4 Jul 2019 00:47:22 +0000 (17:47 -0700)]
tcp: add loss signal to cc algo
Type:feature
Change-Id: Ibe1a4c555b55fb929d55b02599aaf099ed522cdf
Signed-off-by: Florin Coras <fcoras@cisco.com>
Benoît Ganne [Mon, 1 Jul 2019 15:10:41 +0000 (17:10 +0200)]
gbp: add unit-tests for anonymous l3out
Type: test
Change-Id: Ib32c87b7f07c0552a6801a895332a0156c3c37f0
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Thu, 4 Jul 2019 14:43:26 +0000 (16:43 +0200)]
gbp: update gbp-ext-itf API
Change gbp-ext-itf API to create anonymous ext-itf through the same API
as non-anonymous instead of a new API
Type: refactor
Change-Id: I381ff2a5bcd55276793df78ca891334c28946cd0
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Zhiyong Yang [Thu, 4 Jul 2019 02:56:24 +0000 (22:56 -0400)]
vxlan-gpe: simplify counter code
Type: style
Change-Id: Ia50867a853388d9f69571815ddcdaadfc47206bc
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Dave Wallace [Tue, 2 Jul 2019 06:01:40 +0000 (06:01 +0000)]
hsa: clean up quic_echo
- Fix typo
- Use same prefix on all error messages
- Fix time arg parsing
Type: fix
Change-Id: I27334ada47d8512d2b43ce770a55f87081af2a1e
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Florin Coras [Wed, 3 Jul 2019 02:33:15 +0000 (19:33 -0700)]
vcl: disable ldp bidirectional multiple socket tests
Type: fix
Change-Id: I83778d897b6aa37a37ffdfa1d0932bb5e95225e2
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dave Barach [Wed, 3 Jul 2019 14:04:44 +0000 (10:04 -0400)]
doxygen: improve .md file discovery
Add directories under .../src which contain .md files to
DOXY_SRC_DIRECTORIES.
Type: fix
Change-Id: If7ce833b6cb9cd5ec30a8df8e263087e276cfe97
Signed-off-by: Dave Barach <dave@barachs.net>
Dave Barach [Wed, 3 Jul 2019 19:21:50 +0000 (15:21 -0400)]
misc: fix coverity warnings
Type: fix
Ticket: VPP-1649
Change-Id: I93a393eca80065c379035478500e75e855f39b12
Signed-off-by: Dave Barach <dave@barachs.net>
Vratko Polak [Tue, 2 Jul 2019 09:07:24 +0000 (11:07 +0200)]
api: remove garbage from sockclnt_create reply
The fix uses memset to zero after alloc,
as sizing of source string is not obvious.
Function vl_msg_api_alloc_zero is added (and used),
so similar bugs can be fixed easily.
Type: fix
Ticket: VPP-1716
Change-Id: I3b20040d0de4222686c58779f2c0af78c5543504
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Aloys Augustin [Wed, 3 Jul 2019 14:59:43 +0000 (16:59 +0200)]
quic: fifo notifications fix
Add SESSION_IO_EVT_RX handling in session_send_evt_to_thread to allow
internal apps to send rx events ("tx notifications") to quic.
Add a call to quic_send_packets in quic_custom_app_rx_callback to
ensure QUIC ACKs are sent if there is no other activity on the
connection.
Type: fix
Change-Id: I885e01e6475e5b0274f274e9dd34d4a771719e69
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Neale Ranns [Fri, 21 Jun 2019 09:09:25 +0000 (02:09 -0700)]
gbp: Consider data-plane learnt source better than control-plane
Type: feature
Change-Id: Ice8fc0da6450d2aa8ba63ca1277393ac3605aa2c
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Tue, 2 Jul 2019 14:35:28 +0000 (14:35 +0000)]
gbp: improve contract formatting
Type: feature
Change-Id: I04be003bd86f828ec387dd0309bebcbf0a041e3a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Paul Vinciguerra [Tue, 2 Jul 2019 17:00:58 +0000 (13:00 -0400)]
vppapigen: allow decimal number in NUM token
Needed to set f64 default values.
Type: feature
Change-Id: Ic58ebc0d9d890bf0e7821894285e61a5bee13199
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Neale Ranns [Tue, 2 Jul 2019 14:33:29 +0000 (14:33 +0000)]
fib: allow route delete with no paths and multipath=0 to remove the
whole route
Type: fix
Fixes:
097fa66b
Change-Id: I017ab5797670eb278c27c6e306cd8cadaacddf9d
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Tue, 2 Jul 2019 20:07:37 +0000 (13:07 -0700)]
svm: fix multi-chunk fifo alloc and add more tests
Type: fix
- make sure that chunks and the rbtree are initialized if fifo segment
allocates multiple chunks for the fifo.
- ensure head/tail chunks are updated on all enqueue/dequeue events,
including when dropping data.
- more unit tests
Also fixes dequeue drop updates of head chunk.
Change-Id: I77f3550bc4e8b4e077f80ea87fe82b83ed013aeb
Signed-off-by: Florin Coras <fcoras@cisco.com>
juraj.linkes [Wed, 3 Jul 2019 08:42:40 +0000 (10:42 +0200)]
tests: fix FORCE_FOREGROUND
Type: fix
Change-Id: I145f9984c1d944d5b7de0487e8b41ae4fdb95b6d
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
Neale Ranns [Wed, 3 Jul 2019 08:00:53 +0000 (08:00 +0000)]
vat: Fix the incrementing IPv6 address
Type: fix
Change-Id: Ie085713f45672e112993638e01cdb325f451020a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Paul Vinciguerra [Sun, 30 Jun 2019 19:38:55 +0000 (15:38 -0400)]
tests: Have worker return immediately on bad executable
No reason to waste CI cycles if we know the test will not run.
See:
17:55:11 ==============================================================================
17:55:11 VPP Object Model Test
17:55:11 ==============================================================================
17:55:11 Exception in thread Thread-4:
17:55:11 Traceback (most recent call last):
17:55:11 File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
17:55:11 self.run()
17:55:11 File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/framework.py", line 1475, in run
17:55:11 stdout=subprocess.PIPE, stderr=subprocess.PIPE)
17:55:11 File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/run/venv/local/lib/python2.7/site-packages/subprocess32.py", line 617, in __init__
17:55:11 restore_signals, start_new_session)
17:55:11 File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/run/venv/local/lib/python2.7/site-packages/subprocess32.py", line 1415, in _execute_child
17:55:11 raise child_exception_type(errno_num, err_msg)
17:55:11 OSError: [Errno 2] No such file or directory: '/w/workspace/vpp-beta-verify-master-ubuntu1804/test/build/vom_test/vom_test'
17:55:11
17:55:11 17:55:11,328 Timeout! Worker did not finish in 120s
17:55:11 run C++ VOM tests ERROR [ temp dir used by test case: /tmp/vpp-unittest-VOMTestCase-vpMcWF ]
17:55:11
Type: fix
Change-Id: I3d8252807e98a09a8abd70de8a22517151f9d786
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Florin Coras [Mon, 1 Jul 2019 15:57:42 +0000 (08:57 -0700)]
svm: fix shm segment delete
Type:fix
Change-Id: Ia8f3496bf24a7dbe0a295b038aa6dfa24f034989
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dave Barach [Mon, 1 Jul 2019 13:42:41 +0000 (09:42 -0400)]
api: fix coverity warnings
New coverity toolset, new set of squawks to fix
Ticket: VPP-1649
Type: fix
Change-Id: I2a7e4c42b101c6c79c01b150b2523ce3d5d62354
Signed-off-by: Dave Barach <dave@barachs.net>
Benoît Ganne [Wed, 26 Jun 2019 12:05:51 +0000 (14:05 +0200)]
gbp: add anonymous l3-out subnets
An anonymous l3-out subnet is a locally attached l3-out subnet, and
differs from regular l3-out subnets in the way adjacencies are managed.
It is required for the anonymous l3-out external interfaces to correctly
classify locally attached l3-out hosts.
Type: feature
Change-Id: Ie7bc88b1f22abc4d0b46db5f3cfbf208bc53ba5f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Wed, 26 Jun 2019 11:36:51 +0000 (13:36 +0200)]
gbp: add anonymous l3-out external interfaces
So far, GBP l3-out packets classification & policy relied on programmed
EP. All traffic to/from l3-out must go through a known EP.
This patch introduces a new feature where l3-out next-hops are only
known by their subnets (l3-out prefixes). As there are no longer known
EPs to program, an interface must be configured as external anonymous
l3-out. Packets classification & policy on this interface will rely on
the external subnets programmed in the BD VRF.
Note that contrary to all other interfaces in a GBP BD, external
anonymous l3-out interfaces have BD L2 learning turned on and rely on
ARP/ND.
Type: feature
Change-Id: Ieedb29dff4e967d08c4301e82d06bff450a63e5f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Wed, 26 Jun 2019 11:58:09 +0000 (13:58 +0200)]
gbp: disable L2 BD learning per-interface
Disable L2 BD learning for each GBP interface instead of at the bridge
level. This does not change the current behavior (learning is disabled
for all GBP interfaces) but enables turning it on selectively for future
features such as anonymous l3-out.
Type: refactor
Change-Id: Id88644277941d703600acf97d49cbc3332ae3f68
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Jakub Grajciar [Mon, 1 Jul 2019 12:24:48 +0000 (14:24 +0200)]
libmemif: version 3.0
Add support for multi-thread connection establishment.
- control_fd_update() callback now passes private context
associated with updated file descriptor. File descriptor
can belong to memif socket, memif connection or timerfd.
In case of timerfd the context is NULL.
- memif_create_socket() new API. Creates memif socket
handle to be passed to memif_create() in memif_conn_args_t.
This API allows to pass private context whenever the file
descriptor is updated.
- memif_delete_socket() new API. Deletes memif socket.
Socket must not be in use by any interface.
Type: feature
Change-Id: I7ca4e4349595d4477195f1c32403d3e3a6eb5361
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Neale Ranns [Mon, 1 Jul 2019 12:43:33 +0000 (12:43 +0000)]
fib: Coverity fix to remove dead code
Type: fix
Change-Id: I678f523f058165030572d9cd395802b772db9ed7
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Mon, 1 Jul 2019 14:56:47 +0000 (07:56 -0700)]
lisp: init locator probed field in parser
Type: fix
Reported by coverity.
Change-Id: Ic84ac8c373c4c834bfddbf3ca08e2cfa2152e2ae
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Mon, 1 Jul 2019 14:32:31 +0000 (07:32 -0700)]
vcl: handle fd rcv msg error
Type:fix
Also cleanup worker fds on error. Reported by coverity
Change-Id: I52cf77ca90e9ba1cc8ee9ddb3edaeabdc073beda
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Mon, 1 Jul 2019 15:29:39 +0000 (08:29 -0700)]
vcl: fix sock client and server tests
Type:fix
Reported by coverity.
Change-Id: Ie623c5aa3ef54b649039c5ffa10476373c532825
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Mon, 1 Jul 2019 15:15:30 +0000 (08:15 -0700)]
lisp: fix unitialized ip prefix in cp unit test
Type: fix
Found by coverity.
Change-Id: Ibfc753d2c42219d275e3722d6ce1ef0cec189adf
Signed-off-by: Florin Coras <fcoras@cisco.com>
Neale Ranns [Mon, 1 Jul 2019 12:23:10 +0000 (05:23 -0700)]
vom: Fix [m]route dump
Type: fix
Fixes:
097fa66b
Change-Id: I4ada76982c680ee9b0af5828c7268b9b2098ce6b
Signed-off-by: Neale Ranns <nranns@cisco.com>
Benoît Ganne [Tue, 25 Jun 2019 08:32:28 +0000 (10:32 +0200)]
ip: check all fib src for a connected dst entry
When looking for a connected fib entry matching the ARP destination,
there can be other DPO interposed prior to the connected one.
Type: fix
Change-Id: I9b4ab387fb08acf9879d5fda3791e6572a099492
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Dave Barach [Mon, 1 Jul 2019 23:08:33 +0000 (19:08 -0400)]
build: vpp-ext-deps .rpm may not be installed
It's fine to remove the old .rpm, but don't stop the parade if there
wasn't an old .rpm to remove.
Type: fix
Change-Id: I500c740cc4ded16d3345c1e98462a1e8533f1028
Signed-off-by: Dave Barach <dave@barachs.net>
Florin Coras [Mon, 1 Jul 2019 16:51:54 +0000 (09:51 -0700)]
ip: fix ip lookup for arm
Type:fix
Fixes:
cb54e3c
Change-Id: I3120eaabdc00a6c1248cf7eb81f2075983836dfd
Signed-off-by: Florin Coras <fcoras@cisco.com>
Jakub Grajciar [Mon, 24 Jun 2019 08:22:12 +0000 (10:22 +0200)]
libmemif: icmp-responder example buffer management fix
Type: fix
Change-Id: Ieeb763f282ee929a121585747119f458c00056ae
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Neale Ranns [Wed, 19 Jun 2019 13:25:56 +0000 (06:25 -0700)]
gbp: VRF scoped contracts
Type: feature
Change-Id: I01772cfc3a0118a5c49bf346339788824e6931b2
Signed-off-by: Neale Ranns <nranns@cisco.com>
Paul Vinciguerra [Sat, 29 Jun 2019 12:33:05 +0000 (08:33 -0400)]
papi: refactor set_errors_str
Assuming 2500 50 char lines:
string_concat elapsed: 5.
919933e-04
string_join elapsed: 2.
830029e-04
string_concat size: 156,312,500
string_join size: 125,000
Type: refactor
Change-Id: I0a400265426bde492e9a651d24996ddcfe954aa1
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Neale Ranns [Sun, 30 Jun 2019 09:05:05 +0000 (09:05 +0000)]
igmp: accept packets that have more on the wire data than IGMP reports.
IGMPv3 sends a variable length of sources in a query. Today if the
amount of data on the wire does not exactly match that required for the
number of sources the packet is dropped.
Relax this check and instead accept the packet is the amount of wire
data is equal or greater than the number of sources.
Some devices on the wild internet pad small packets.
Type: feature
Change-Id: I102682814b38c0a0614d71816c9a286d90b834df
Signed-off-by: Neale Ranns <nranns@cisco.com>
Paul Vinciguerra [Wed, 26 Jun 2019 01:02:40 +0000 (21:02 -0400)]
pg: format_pg_input_trace - reorder fields
00:00:00:814640: pg-input
stream pcap0-sw_if_index-1, 42 bytes, 1 sw_if_index
is changed to:
00:00:00:814640: pg-input
stream pcap0-sw_if_index-1, 42 bytes, sw_if_index 1
Type: style
Change-Id: I9bb32494c9c1d08bc7588f088ed67a60ed3236dd
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Steven Luong [Tue, 25 Jun 2019 20:47:06 +0000 (13:47 -0700)]
devices: virtio pci leaking spinlock
Memory is dirt cheap. But there is no need to throw it away.
Type: fix
Change-Id: I155130ab3c435b1c04d7c0e9f54795b8de9383d9
Signed-off-by: Steven Luong <sluong@cisco.com>
Florin Coras [Fri, 28 Jun 2019 19:45:12 +0000 (12:45 -0700)]
svm: rename fifo tx notifications to reflect use
Type: refactor
Change-Id: I651db44acdcb666a9c63e1037352cf88c68795b5
Signed-off-by: Florin Coras <fcoras@cisco.com>
Vijayabhaskar Katamreddy [Fri, 28 Jun 2019 19:59:23 +0000 (12:59 -0700)]
interface: fixes for buliding for 32bit targets
* structure alignment and padding issues
Type: fix
Change-Id: Ic7c2a8cb5a5526902463f3b4d2d93284b454ab6f
Signed-off-by: Vijayabhaskar Katamreddy <vkatamre@cisco.com>
Neale Ranns [Wed, 19 Jun 2019 07:14:10 +0000 (07:14 +0000)]
ip: ip-lookup - remove the dead code
Type: refactor
Change-Id: I791cc63e989df049104420faf74fc28f965b6648
Signed-off-by: Neale Ranns <nranns@cisco.com>
Dave Barach [Fri, 28 Jun 2019 19:08:49 +0000 (15:08 -0400)]
vppinfra: add dummy/noop f32/f64 endian swap fns
Makes life easier for binary API language bindings
Type: fix
Change-Id: Ib459274fda05153d01cbb7bc328a8407e3ee5027
Signed-off-by: Dave Barach <dave@barachs.net>
Nathan Skrzypczak [Wed, 22 May 2019 16:41:50 +0000 (18:41 +0200)]
quic : Use TX event for app read notification
Type: feature
Change-Id: I1846cdeb35f079249f66a0351aa244c540923a43
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Florin Coras [Fri, 28 Jun 2019 16:18:48 +0000 (09:18 -0700)]
tcp: reject out-of-order fins
Type:fix
Change-Id: Iab2c308739f7733dbf70953e0ea87dcc404c60da
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 28 Jun 2019 16:41:28 +0000 (09:41 -0700)]
tcp: fix close-waiting check for outstanding tx data
Type: fix
Change-Id: I9e0e1bb933c38b17ac9fb8bf11b81e2fed021bf8
Signed-off-by: Florin Coras <fcoras@cisco.com>
Nathan Skrzypczak [Wed, 26 Jun 2019 11:53:08 +0000 (13:53 +0200)]
session: add half_open_has_fifos for UDPC
Type: fix
Change-Id: Iede83a4e72b88fd55bf56ec0ca71c9196ce743cd
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Paul Vinciguerra [Thu, 27 Jun 2019 00:45:08 +0000 (20:45 -0400)]
tests: handle TypeErrors in calls to VppDiedError
Type: test
Change-Id: I869768ed25efa3350f025fba329466db69805803
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Benoît Ganne [Thu, 27 Jun 2019 15:31:28 +0000 (17:31 +0200)]
tap: fix memory errors in create/delete
If the host interface name is not specified at creation, host_if_name
was wrongly set to a stack-allocated variable. Make sure it always
points to a heap allocated vector.
At deletion time, we must free all allocated vectors.
Type:fix
Change-Id: I17751f38e95097998d51225fdccbf3ce3c365593
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Neale Ranns [Fri, 28 Jun 2019 08:33:24 +0000 (08:33 +0000)]
igmp: Trace more data form input packets
Type: feature
Change-Id: I40ecc0da1281115f6e540064224538fe9472887e
Signed-off-by: Neale Ranns <nranns@cisco.com>
Vladimir Kropylev [Wed, 26 Jun 2019 09:56:21 +0000 (12:56 +0300)]
tcp: Setup initial CWND as configured
Type: feature
Change-Id: I7f476f4f81994c9c6cc2e8091de08adff4bcbc77
Signed-off-by: Vladimir Kropylev <vladimir.kropylev@enea.com>
Florin Coras [Thu, 27 Jun 2019 17:32:27 +0000 (10:32 -0700)]
sctp: add option to enable/disable
Type: feature
By default sctp is disabled to avoid wasting cycles.
Change-Id: I1e2f764c7168b5c15062efbe5895de93dcc2614e
Signed-off-by: Florin Coras <fcoras@cisco.com>
Aloys Augustin [Fri, 21 Jun 2019 15:04:29 +0000 (17:04 +0200)]
tests: pin python dependencies
This commit ensures that the tests always run with the exact same
version for all the Python dependencies. It uses pip-tools to achieve
that.
Our top-level dependencies are specified in the requirements.txt file.
From this file, pip-tools generates the requirements-{2,3}.txt file,
which pins all the versions of all the recursive dependencies, and is
used to install the packages in the test virtualenv.
To change or add a top-level dependency, update requirements.txt and run
make test as usual with python2 and python3. The requirements-{2,3}.txt
file will be updated and you can verify that nothing breaks. Then add
all requirements* files in your commit.
To refresh the python packages (i.e. get new versions of the recursive
dependencies, or of the dependencies that are not pinned in
requirements.txt), just run:
PYTHON=python2.7 make test-refresh-deps
PYTHON=python3.6 make test-refresh-deps
and this will update the requirements-{2,3}.txt files. Ideally we
should run this after each release.
Type: make
Change-Id: Ic533de3d06ec4019ff38f5231208da6f1025bfc7
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Nathan Skrzypczak [Wed, 19 Jun 2019 11:42:37 +0000 (13:42 +0200)]
session: Add transport vft protocol options
Type: refactor
Change-Id: I4e0afc206e4871596c2ed8a6ca00914a379f1526
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Aloys Augustin [Thu, 27 Jun 2019 14:10:23 +0000 (16:10 +0200)]
quic: fix tests
Reduce the amount of data sent to avoid a hang in the QUIC stack when
the fifos get full. This fixes the QUIC tests in debug mode while
https://gerrit.fd.io/r/c/19823/ is not merged.
Change-Id: I1ed4c5dc3d41c09bc674de808f3778a074b15454
Type: test
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Florin Coras [Thu, 27 Jun 2019 04:11:26 +0000 (21:11 -0700)]
svm: improve fifo segment test
Type: feature
Try to also catch weirdness when running tests on arm cpus.
Change-Id: I45ab7c225f43623447271e67ebf37f94236a288f
Signed-off-by: Florin Coras <fcoras@cisco.com>
Paul Vinciguerra [Wed, 26 Jun 2019 00:51:31 +0000 (20:51 -0400)]
tests: rename stream name in tests
PacketGenerator streams were named based on their sw_if_index but without
knowing that, it looked like it was paired with the interface instance value.
Reencode the name to encode the data in a clearer way.
20:48:12,859 CLI: packet-generator new pcap
/tmp/vpp-unittest-TestClassifierPBR-6DVQW2/pg0_in.pcap
source pg0 name pcap0-sw_if_index-1
Change-Id: I5b82193943fee0cf060900d73aaaaecca1247105
Type: style
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
jdenisco [Wed, 26 Jun 2019 18:17:12 +0000 (18:17 +0000)]
docs: Update the vhost section
Change-Id: Ic7a144ffda0d0a3e0f6f9bc1a4790ab36fdf002e
Signed-off-by: jdenisco <jdenisco@cisco.com>
Neale Ranns [Thu, 27 Jun 2019 08:13:35 +0000 (08:13 +0000)]
build: remove japi-install from Makefile
Type: fix
Change-Id: I63245280a0939d07f495b11005596ffdfe1d85c8
Signed-off-by: Neale Ranns <nranns@cisco.com>
Steven Luong [Wed, 26 Jun 2019 22:32:43 +0000 (15:32 -0700)]
lacp: custom dump for sw_interface_lacp_dump
Add custom dump code for sw_interface_lacp_dump
Type: fix
Change-Id: Ifa76192ec65f596391c07b151d2a7fceed502665
Signed-off-by: Steven Luong <sluong@cisco.com>
Neale Ranns [Wed, 26 Jun 2019 13:59:53 +0000 (06:59 -0700)]
vom: get the tests working again
Type: fix
Fixes:
097fa66b
Change-Id: Ib73714665e3325c7e1e8f939275933a4d219f96b
Signed-off-by: Neale Ranns <nranns@cisco.com>
Vratko Polak [Wed, 26 Jun 2019 15:24:56 +0000 (17:24 +0200)]
papi: prevent message_table inconsistencies
Socket transport is maintaining message_table to map
message name to index. After disconnect and re-connect,
the VPP may have been restarted with different set of plugins,
so message_table has to be wiped.
+ Edited MAINTAINERS to recognize "papi" as a separate component.
Type: fix
Change-Id: I1f16ad7ee0886e03bbc6a17bcddbfcaa322354e5
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Florin Coras [Wed, 26 Jun 2019 16:11:23 +0000 (09:11 -0700)]
tcp session: improvement to tests
Type: fix
Attempt at fixing a random failing tcp test
Change-Id: I73aa31e26dd2df77d8b975e4fc88df16d8991863
Signed-off-by: Florin Coras <fcoras@cisco.com>
Zhiyong Yang [Fri, 14 Jun 2019 01:14:33 +0000 (21:14 -0400)]
bonding: fix comment typo
Type: style
Change-Id: I28908756019f8ca54c50334c470d8eded5621ade
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Florin Coras [Wed, 26 Jun 2019 01:14:13 +0000 (18:14 -0700)]
svm: fix fifo segment free chunk bytes accounting
Type:fix
Change-Id: Icab89337eb3dbdc93d0fb453cfd34090026072b7
Signed-off-by: Florin Coras <fcoras@cisco.com>
Paul Vinciguerra [Wed, 26 Jun 2019 10:52:32 +0000 (06:52 -0400)]
tests: fix test-checkstyle failure in test_memif.py
Type: style
Change-Id: Ifea1fed5a6943605a6111afb33c54a8ff852d087
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Neale Ranns [Wed, 26 Jun 2019 09:16:50 +0000 (02:16 -0700)]
fib: default flow hash config for each DPO protocol type
Type: fix
Fixes:
59fa121f
Change-Id: I9eb4fe1612734e54932228527c37bf33b705dbdb
Signed-off-by: Neale Ranns <nranns@cisco.com>
Lijian.Zhang [Wed, 29 May 2019 09:13:42 +0000 (17:13 +0800)]
vppinfra: add u64x2_scatter/u32x4_scatter
Add u64x2_scatter/u32x4_scatter in vector_neon.h. u64x2_scatter/u32x4_scatter
scatters data from SIMD register to scattered memory locations.
Type: feature
Change-Id: I298d5478c7ba6935ab7402a6d467c7ee00f17e9f
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Reviewed-by: Sirshak Das <Sirshak.Das@arm.com>
Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
Benoît Ganne [Thu, 6 Jun 2019 15:53:21 +0000 (17:53 +0200)]
gbp: enforce same endpoint mac and ip src
During packet classification, make sure packets coming from an EP also
matches this specific EP IP address and vice-versa. This prevents and EP
to send a packet on behalf of another EP.
Type: fix
Change-Id: I30287644ec73b90d9b6913952a82b2baedf6a5ff
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Paul Vinciguerra [Thu, 6 Jun 2019 18:07:55 +0000 (14:07 -0400)]
api: refactor format_vl_api_prefix_t return keys
format_vl_api_prefix_t returns a dict with keys 'address' and 'address_length',
but other format_vl_api_prefix functions return a dict with 'prefix', and 'len'.
Refactor all format_vl_api_prefix_t to return consistent keys 'address' and 'len'.
Type: refactor
Change-Id: I5f9558fc2da8742a303266e011102f5b2db80aad
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Paul Vinciguerra [Tue, 18 Jun 2019 11:57:53 +0000 (07:57 -0400)]
tests: set object_id for routes.
Object id's are used as keys in the object repository.
They need to be unique.
Also useful for debugging in log.txt.
Type: test
Change-Id: I69b5f3a7508918a5780ff8f20d27d4a3c34a5699
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Neale Ranns [Wed, 26 Jun 2019 07:26:08 +0000 (00:26 -0700)]
vom: fix test build failure
Type: fix
Fixes:
097fa66b
Change-Id: Id5ae4029f27af6cba76d6527c0d3d7212ab84f3e
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Fri, 21 Jun 2019 14:57:18 +0000 (07:57 -0700)]
api: Remove the inlines file and replace with library functions
using inlines exposes the users to the internal data types used by VPP, namely vec.h. This file does not compile with a C++ compiler.
Type: feature
Change-Id: I1544fdd9eae998309f865df61df78571bdb96903
Signed-off-by: Neale Ranns <nranns@cisco.com>
Jakub Grajciar [Tue, 25 Jun 2019 08:22:11 +0000 (10:22 +0200)]
tests: fix memif tests
remote_test.py - Remove 'ret' arg from _remote_exec(), so that the function
always reads the reply from the pipe. (fix unmatched request/reply)
memif_test.py - Don't register VppIpRoute to VppObjectRegistry.
Type: fix
Change-Id: I8a51e7ffd68df5f379534f5ddd5ec9367a89be32
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Chore [Tue, 25 Jun 2019 12:45:37 +0000 (17:15 +0430)]
misc: nat is added to MAINTAINERS file.
Type: fix
Change-Id: I3c6a0abad22c86c7125dc10e6d9be3d5af6d4ee3
Signed-off-by: Chore <s3m2e1.6star@gmail.com>
Mohsin Kazmi [Tue, 25 Jun 2019 12:55:46 +0000 (14:55 +0200)]
vom: Add getter for interface admin state
Type: feature
Change-Id: I3409bedb45f033210202c151a2267b036b8b97d6
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Paul Vinciguerra [Tue, 25 Jun 2019 21:57:31 +0000 (17:57 -0400)]
api: initialize sw_if_index earlier in vxlan_gbp_tunnel_add_del
In the case of an error, it is uninitialized.
Type: fix
Change-Id: Ib88fb997e5eef410c1cd970674d9385575f30366
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Steven Luong [Tue, 25 Jun 2019 23:01:41 +0000 (16:01 -0700)]
misc: add bond_dump, slave_dump, and rx_placement_dump
Fixed the missing bond_dump, slave_dump, and rx_placement_dump in
custom_dump.c
Type: fix
Change-Id: I9bf9ce071db175543edb383768c5915b939758ae
Signed-off-by: Steven Luong <sluong@cisco.com>
Steven Luong [Wed, 26 Jun 2019 05:36:26 +0000 (22:36 -0700)]
vmxnet3: custom dump and debug cli fix
Add missing custom dump for vmxnet3_create, vmxnet3_delete, and
vmxnet3_dump.
Fix vmxnet3_create debug cli which may not parse all parameters
correctly due to passing address of u16 to unformat(). The fix is
to use a u32 local variable to receive the correct value from
unformat().
Type: fix
Change-Id: I04251c9ed0ab397ed4b1b5843a73880aec98b9f6
Signed-off-by: Steven Luong <sluong@cisco.com>
Neale Ranns [Tue, 25 Jun 2019 11:38:37 +0000 (11:38 +0000)]
fib: adj cover refinement check change
Usually the adj cover refinement check which ensures that for any
adj sourced prefix its cover is connected, is satified by the presence
of the interface source. The interface source has a high priority
hence during the adj refinement check get_flags() which uses the best
source, usually returns the flags for the interface source. However,
in the presence of higher priority sources that interpose get_flags does
not return connected and the check fails.
With this change add a specific check for the interface source if the
best is not connected.
Type: feature
Change-Id: Iabc3e29fe7c447fc3ef313e40b00d48fab09fba4
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Tue, 25 Jun 2019 19:55:15 +0000 (12:55 -0700)]
hsa: move vcl test apps to hsa
Type: refactor
Change-Id: I352975585c1091bfc5b85d7f8fe985f9059820a7
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Tue, 25 Jun 2019 22:30:12 +0000 (15:30 -0700)]
misc: fix sctp test with debug images
Type:fix
Change-Id: I6bf938d8c71b0fac6e093278132b00fc1ab951bb
Signed-off-by: Florin Coras <fcoras@cisco.com>