Nathan Skrzypczak [Fri, 13 Sep 2019 13:44:54 +0000 (15:44 +0200)]
session: add session enable option in config file
Type: feature
Change-Id: I8f02873e75c6e890f6749806d4f02547f951c8ca
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Aloys Augustin [Thu, 12 Sep 2019 16:04:30 +0000 (18:04 +0200)]
hsa: Fix QUIC sessions count calculation
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Change-Id: Ia53a41a30920f8af7cd00c6f809b32e7cc277b7a
Damjan Marion [Fri, 13 Sep 2019 11:48:05 +0000 (11:48 +0000)]
devices: partial revert of af_packet API cleanup patch
Reverting as make test must me able to run non-root so creating tap interfaces is no-go.
Type: fix
Fixes:
3b2db9002c14f9e0742622f2d503c5801d443827
Change-Id: Ib6eb2679b65b662ed6e88e67f8b199744abae85e
Signed-off-by: Damjan Marion <dmarion@me.com>
Florin Coras [Fri, 13 Sep 2019 01:49:44 +0000 (18:49 -0700)]
tcp: cleanup scoreboard after recovery
Type: fix
When recovering from congestion, remove last hole in scoreboard if it
covers all bytes sent above snd_congestion.
Change-Id: I752accd4590cd9bf553c35a1bb40a38c308c04f5
Signed-off-by: Florin Coras <fcoras@cisco.com>
Jakub Grajciar [Mon, 26 Aug 2019 09:25:52 +0000 (11:25 +0200)]
devices: af_packet API cleanup
Use consistent API types.
- fix af_packet_dump dumping deleted interface
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Ie8d138e30c8c51a2306bb2ad9ac0b7a49d5412bf
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Benoît Ganne [Wed, 11 Sep 2019 15:47:56 +0000 (17:47 +0200)]
map: fix non-null-terminated C-string
Type: fix
Change-Id: Ia3a4693acd5eab234f60b37436c5b642b00bda46
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Elias Rudberg [Thu, 12 Sep 2019 12:57:47 +0000 (14:57 +0200)]
dpdk: fix null-termination of strings
Fix problem with some strings not being null-terminated,
by using the vec_terminate_c_string macro in two places.
The problem was found using AddressSanitizer.
(Also make sure indentation is OK for those changes.)
Ticket: VPP-1772
Type: fix
Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: Ib7826e3c322e58b649e2d7f6053786da618a5e9e
Benoît Ganne [Wed, 11 Sep 2019 14:40:04 +0000 (16:40 +0200)]
hsa: fix memory management bugs
Fix use-after-free and non-null terminated string.
Type: fix
Change-Id: Ibba2a6cae68c612a34477aa813b3bf27a0c8fc1f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Benoît Ganne [Wed, 11 Sep 2019 14:41:49 +0000 (16:41 +0200)]
quic: fix use-after-free
Type: fix
Change-Id: I5e5e37684e336ca992dae8ea1d39b1fb103802b1
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Steven Luong [Wed, 11 Sep 2019 17:49:30 +0000 (10:49 -0700)]
misc: bond_create is broken for custom dump print
Regression from https://gerrit.fd.io/r/#/c/vpp/+/21508/
The aformentioned patch changed lb and mode to u32. But it does not make the
same change to custom_dump.c
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I2b7d065e21427090af3deb47c8a24c5da679e4f5
Benoît Ganne [Tue, 10 Sep 2019 16:42:09 +0000 (18:42 +0200)]
quic: fix non-null terminated hostname string
Type: fix
Change-Id: I089d359d5726050f32f69366547086216fdb3098
Signed-off-by: Benoît Ganne <bganne@cisco.com>
jdenisco [Wed, 11 Sep 2019 13:05:45 +0000 (09:05 -0400)]
docs: run-sphinx-docs-merged
Type: docs
Signed-off-by: jdenisco <jdenisco@cisco.com>
Change-Id: I571222f3e3672253930700e23cca4812dde84a6d
Lijian.Zhang [Mon, 8 Jul 2019 02:33:34 +0000 (10:33 +0800)]
ip: apply dual loop unrolling in ip4_input
Too many prefetches within loop unrollings induce bottleneck and
performance degradation on some CPUs which have less cache line fill
buffers, e.g, Arm Cortex-A72.
Apply dual loop unrolling and tune prefetches manually to resolve
hot-spot with prefetch instructions.
It saves about 11.5% cycles with ip4_input node on Cortex-A72 CPUs.
Type: feature
Change-Id: I1ac9eb21061a804af2a414b420217fbcda3689c9
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Lijian.Zhang [Tue, 9 Jul 2019 09:54:32 +0000 (17:54 +0800)]
ip: apply dual loop unrolling in ip4_rewrite
Too many prefetches within loop unrollings induce bottleneck and
performance degradation on some CPUs which have less cache line fill
buffers, e.g, Arm Cortex-A72.
Apply dual loop unrolling and tune prefetches manually to remove
hot-spot with prefetch instructions, to get throughput improvement.
It brings about 7% throughput improvement and saves 28% clocks with
ip4_rewrite nodes on Cortex-A72 CPUs.
Type: feature
Change-Id: I0d35ef19faccbd7a5a4647f50bc369bfcb01a20d
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Lijian.Zhang [Thu, 11 Jul 2019 08:44:22 +0000 (16:44 +0800)]
dpdk: apply dual loop unrolling in DPDK TX
Too many prefetches within loop unrollings induce bottleneck and
performance degradation on some CPUs which have less cache line fill
buffers, e.g, Arm Cortex-A72.
Apply dual loop unrolling and tune prefetches manually to remove
hot-spot with prefetch instructions, to get throughput improvement.
It brings about 1% throughput improvement and saves 8% clocks with
the target node on Cortex-A72.
Type: feature
Change-Id: If3a64a04a77e90cd0240bc4d1186dbb09dac7df0
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Jakub Grajciar [Wed, 11 Sep 2019 08:21:17 +0000 (10:21 +0200)]
memif: fix zero-copy arg overwrite
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I9a34465c85597baecdbc672ce395265f7dbb7f00
Jakub Grajciar [Mon, 26 Aug 2019 10:55:15 +0000 (12:55 +0200)]
bonding: API cleanup
Use consistent API types.
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Idbba4ab6a412b75338e3149e51476693f0862f16
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Florin Coras [Fri, 6 Sep 2019 19:56:58 +0000 (12:56 -0700)]
tcp: handle sack reneging
Type: feature
Change-Id: I201155b1b92cf7e57310af726879dab039090582
Signed-off-by: Florin Coras <fcoras@cisco.com>
jialv01 [Mon, 9 Sep 2019 16:23:55 +0000 (00:23 +0800)]
build: fix running error with vmxnet3_test_plugin.so
vpp_api_test load vmxnet3_test_plugin.so error:
"load_one_plugin:42:/vpp/lib/vpp_api_test_plugins/vmxnet3_test_plugin.so:
undefined symbol: unformat_vlib_pci_addr"
Type: fix
Signed-off-by: Jianlin Lv <Jianlin.Lv@arm.com>
Change-Id: I444aa05d0bc3c4f4f25082388243f1adb305dd0a
Simon Zhang [Mon, 2 Sep 2019 14:54:00 +0000 (22:54 +0800)]
tcp: enable gso in tcp hoststack
Type: feature
Change-Id: If68d07fbe8c6f7fffd2f93c7e854367082927e4f
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
Dave Barach [Mon, 9 Sep 2019 20:38:17 +0000 (16:38 -0400)]
misc: clean up "pcap [rx|tx] trace" debug CLI
Separate debug CLI arg parsing from the underlying action
function. Fixes a number of subtle ordering dependencies, and will
allow us to add a binary API to control the feature at some point in
the future.
Type: refactor
Ticket: VPP-1770
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Id0dbeda06dad20e756c941c691e2088ce3c50ec7
Florin Coras [Tue, 10 Sep 2019 02:22:36 +0000 (19:22 -0700)]
session: fix session filter range
Type:fix
Change-Id: I173f45bf3d90e6979675b2ac812a969539f02147
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 30 Aug 2019 17:00:30 +0000 (10:00 -0700)]
tcp: validate connections in output
Type: feature
This shouldn't happen unless connections are removed after buffers were
enqueued to tcp-output and before tcp-output runs. For instance, packet
is enqueued to tcp output and cleanup is called for connection.
Change-Id: Ib7dd82ffa6cfb21ff5068aba010e0a3497eeea13
Signed-off-by: Florin Coras <fcoras@cisco.com>
Nathan Skrzypczak [Mon, 9 Sep 2019 14:45:06 +0000 (16:45 +0200)]
misc: fix shebang with missing env
This is needed for macos where /usr/bin/python[23] does not exist
and /usr/bin is write protected
Type: fix
Change-Id: Ia1b3c732248c78482993de532fa2ea96e376d90a
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Vratko Polak [Fri, 6 Sep 2019 13:20:07 +0000 (15:20 +0200)]
papi: let async calls return context
Callback receives "reply" messages containing context,
but previously there was no easy way
to get the automatically generated context value
of the originally sent "command" message.
With this, the caller can store the contexts,
so the callback knows which command got replied to.
Type: feature
Change-Id: I58ca812d20b03916f74096c396126710115a747c
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Dave Barach [Mon, 9 Sep 2019 20:56:53 +0000 (16:56 -0400)]
misc: fix coverity warning in the oddbuf plugin
Clean up license / copyright headers
Type: fix
Ticket: VPP-1771
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ibfc2a46632e17578fd74357b83f417987b8447be
Dave Barach [Mon, 9 Sep 2019 15:02:45 +0000 (11:02 -0400)]
docs: improve unformat documentation
Specifically: document the unformat specifiers "%=", "%|", and correct
usage of unformat_line_input.
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I254f9c4a61c5c8d3edbf76f521e5f38fb89150f1
Jakub Grajciar [Wed, 21 Aug 2019 08:51:21 +0000 (10:51 +0200)]
memif: API cleanup
Use consistent API types.
memif_create now enables zero-copy by default.
Add no_zero_copy param to memif_create which
if set, disables zero copy.
Type: refactor
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I11df8b9212c40de179ee71dc9da14039b982ede5
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Jakub Grajciar [Mon, 9 Sep 2019 08:39:08 +0000 (10:39 +0200)]
libmemif: prevent crash in case of invalid connection handle
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I803c86a48e0148ef143026a5cd93e4510c4f0611
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Dave Barach [Thu, 29 Aug 2019 22:01:30 +0000 (18:01 -0400)]
vlib: clean up the "pcap dispatch trace" debug CLI
Separate debug CLI arg parsing from the underlying action
function. Fixes a number of subtle ordering dependencies, and will
allow us to add a binary API to control the feature at some point in
the future.
Type: refactor
Ticket: VPP-1762
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I1240fe3f61a0acf5ee9faed60d6ad3386e72e569
Dave Barach [Wed, 4 Sep 2019 16:09:32 +0000 (12:09 -0400)]
ip: fix udp/tcp checksum corner cases
When checksumming chained buffers with odd lengths: insert a
NULL byte, or the calculation fails.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I380f7c42897bdb28c8c29aa1c4cdaaa849cc9ecc
Filip Tehlar [Wed, 4 Sep 2019 11:34:15 +0000 (11:34 +0000)]
ikev2: fix crash during IKE SA Init exchange
Type: fix
Change-Id: If827fe348fe35d1221d29f91b7e6ea1624d13999
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Steven Luong [Tue, 20 Aug 2019 23:58:00 +0000 (16:58 -0700)]
bonding: add weight support for active-backup mode
Not all interfaces have the same characteristics within the bonding group.
For active-backup mode, we should do our best to select the slave that
performs the best as the primary slave. We already did that by preferring
the slave that is local numa. Sometimes, this is not enough. For example,
when all are local numas, the selection is arbitrary. Some slave interfaces
may have higher speed or better qos than the others. But this is hard to
infer.
One rule does not fit all. So we let the operator to optionally specify the
weight for each slave interface. Our primary slave selection rule is now
1. biggest weight
2. is local numa
3. current primary slave (to avoid churn)
4. lowest sw_if_index (for deterministic behavior)
This selection rule only applies to active-backup mode which only one slave
is used for forwarding traffic until it becomes unreachable. At that time,
the next "best" slave candidate is automatically promoted. The slaves are
sorted according to the preference rule when they are up. So there is no need
to find the next best candidate when the primary slave goes down.
Another good thing about this rule is when the down slave comes back up, it
is selected as the primary slave again unless there is indeed a "better"
slave than this down slave that were added during that period.
To set the weight for the slave interface, do this after the interface is
enslaved
set interface bond <interface-name> weight <value>
Type: feature
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I59ced6d20ce1dec532e667dbe1afd1b4243e04f9
Aloys Augustin [Thu, 5 Sep 2019 15:58:21 +0000 (17:58 +0200)]
quic: fix server opening stream immediately
Previously, if the first thing a server did was to open a stream and
send data, this could trigger a crash on the clilent side VPP as the
quic session wouldn't be allocated.
Change-Id: I43990ce2a71217d6719ecae4da60111d05fbcfc0
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Mohsin Kazmi [Thu, 5 Sep 2019 18:17:30 +0000 (20:17 +0200)]
tap: revert clean-up when linux will delete the tap interface
Type: fix
Ticket: VPP-1766
revert
e4ac48e792f4eebfce296cfde844ee73b1abd62f
Change-Id: I03feea4008a47859d570ad8d1d08ff3f30d139ef
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
(cherry picked from commit
623a1b7053424b539a51faf866ab839d3da3f45b)
jialv01 [Wed, 4 Sep 2019 03:31:10 +0000 (11:31 +0800)]
build: fix unsupported CMake comparison operation
VERSION_GREATER_EQUAL is not supported before CMake version 3.7.
Type: fix
Signed-off-by: Jianlin Lv <Jianlin.Lv@arm.com>
Change-Id: Id690b7b7c26121f9d289ebd0aaea0860be63795f
Filip Tehlar [Tue, 3 Sep 2019 14:21:05 +0000 (14:21 +0000)]
dpdk: fix extended stats
Extended stats are not displayed due to incorrect condition.
Type: fix
Change-Id: Ie04664e6274137462dce832bf7ee06204cd77be5
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Jakub Grajciar [Mon, 2 Sep 2019 11:28:52 +0000 (13:28 +0200)]
bfd: API cleanup
Use consistent API types.
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I4b91ebe8aadbec8b95716ed1cde4b0a13eee3a3f
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Steven Luong [Wed, 7 Aug 2019 19:20:22 +0000 (12:20 -0700)]
stats: add /if/<n>/<n>/state for lacp interface state
Add /if/lacp/<bond-sw_if_index>/<slave-sw_if_index>/state
<bond-sw_if_index> is a vector of the bond sw_if_index
<slave-sw_if_index> is a vector of the slave sw_if_index
Content is the integer value of the lacp actor state. The state is actually
a bitfield as described in the lacp protocol spec.
Type: feature
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ic6eca8ce2a1acd2d858e4e50b7eac1d000ea08e5
Signed-off-by: Ole Troan <ot@cisco.com>
Jakub Grajciar [Wed, 4 Sep 2019 08:32:49 +0000 (10:32 +0200)]
memif: always enable zero-copy when creating memif using API
Type: fix
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I823b6297e1d2bdd438633ec7b877960e6d8423fa
Florin Coras [Sat, 31 Aug 2019 16:45:13 +0000 (09:45 -0700)]
session: improve cli
Type: feature
Allow session cli filtering based on thread index, transport protocol,
session state and range of session pool indices. For instance
show session thread 1 proto tcp state ready range 0 20 verbose
Shows the session ids for the first 20 tcp sessions in thread 1 that are
in ready state.
To avoid excessive output that could reasult in the worker barrier being
held by the main thread for long periods of time, the session cli will
only output:
- session ids (verbose == 1) for a maximum of 50 sessions / worker
- verbose > 1 details for a maximum of 10 sessions
Change-Id: I2cfb351b548e2e0a1d5b4345810be613e2917d17
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Tue, 3 Sep 2019 19:37:11 +0000 (12:37 -0700)]
tcp: cc algos handle cwnd on congestion signal
Type: refactor
Change-Id: I15b10a22d0d0b83075a0eef5ef8c09cf76989866
Signed-off-by: Florin Coras <fcoras@cisco.com>
Matthew Smith [Fri, 12 Jul 2019 16:48:24 +0000 (11:48 -0500)]
ethernet: move dmac filtering to inline function
In eth_input_process_frame(), destination MAC addresses are
compared to the interface hardware address in a loop. Move
this to a separate inline function to facilitate making changes
to the filtering logic more cleanly.
Type: refactor
Change-Id: I0978f01667e78af5214dbbc9ba223f5b84ce6b7e
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Damjan Marion [Wed, 4 Sep 2019 13:26:55 +0000 (15:26 +0200)]
avf: reduce default ITR interval
Type: fix
Fixes:
b4ff07a
Change-Id: I361ec71944048734b73eec700e32531fb070194e
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ole Troan [Wed, 28 Aug 2019 12:12:02 +0000 (14:12 +0200)]
api: memclnt api use string type.
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Idad79286b7730c8e85202c4b8e675ea50f8bbc48
Signed-off-by: Ole Troan <ot@cisco.com>
Florin Coras [Tue, 3 Sep 2019 20:06:11 +0000 (13:06 -0700)]
session: avoid bihash list for session tables
Type: fix
Change-Id: I1dbc822061f43fcc25dfa5d1728f5c7575139f45
Signed-off-by: Florin Coras <fcoras@cisco.com>
Matthew Smith [Tue, 3 Sep 2019 21:45:33 +0000 (16:45 -0500)]
ethernet: fix dmac check avx2 loop condition
In eth_input_process_frame(), a loop which checks the destination
MAC address of received packets had a different condition for avx2
than it did for the non-avx2 version of the loop. It could result
in one unnecessary execution of the loop body after all packets
had been processed.
Type: fix
Fixes:
8d6f34e2b1cbfde5702e88686631527d5e1e10a0
Change-Id: Ib673f45917a0dea461987fdc8f0ca318b749fb1a
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Ole Troan [Fri, 23 Aug 2019 20:55:18 +0000 (22:55 +0200)]
api: enforce vla is last and fixed string type
Enforce that variable length fields are the last element of API messages.
Add a 'fixed' version of string type, since dealing with
multiple variable length strings turned out too painful
for the C language bindings.
The string type is now:
{
string name[64]; // NUL terminated C-string. Essentially decays to u8 name[64]
string name[]; // Variable length string with embedded len field (vl_api_string_t)
};
The latter notation could be made available to other types as well.
e.g.
{
vl_api_address_t addresses[];
}
instead of
{
u32 n_addr;
vl_api_address_t addresses[n_addr];
};
Type: fix
Change-Id: I18fa17ef47227633752ab50453e8d20a652a9f9b
Signed-off-by: Ole Troan <ot@cisco.com>
Ole Troan [Tue, 3 Sep 2019 18:58:08 +0000 (20:58 +0200)]
stats: memory leak with per-node-counters on
vlib_node_get_nodes() creates a duplicate node structure which was never freed.
Type: fix
Fixes:
1ddbc0138b
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ib1200854937faaa694b398607d2f0ba65aa81c01
Benoît Ganne [Tue, 3 Sep 2019 15:54:21 +0000 (17:54 +0200)]
gbp: fix set_mac() in unit tests
Do not use low-level sw_interface_set_mac_address() directly and use
higher-level set_mac() instead, otherwise interface local_mac and
configured mac are out-of-sync
Type: fix
Fixes:
25b049484f
Change-Id: I9366e7afb95ef00e25a94ca3b0e6309871169878
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Dave Barach [Tue, 3 Sep 2019 14:57:19 +0000 (10:57 -0400)]
vppinfra: add bihash_init2
Add controls to list / not list a specific bihash in clib_all_bihashes,
to immediately initialize a bihash.
clib_bihash_init2 is now the primary API. It takes a typical args_t
structure. clib_bihash_init becomes a compatibility widget. It
fabricates an args_t and calls init2...
Type: refactor
Ticket: VPP-1758
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ib3e1304884997cf7025af20bdc67a7dda290f15b
Lijian.Zhang [Wed, 21 Aug 2019 09:51:16 +0000 (17:51 +0800)]
tap: fix tap interface not working on Arm issue
The VPP code tries to set all userspace memory in the table via IOCTL
to VHOST_SET_MEM_TABLE. But on aarch64, the userspace address range is
larger (48 bits) than that on x86 (47 bits). Below is an segment from
/proc/[vpp]/maps.
fffb41200000-
fffb43a00000 rw-s
00000000 00:0e 532232
/anon_hugepage (deleted)
Instead of setting all userspace memory space to vhost-net, will only set
the address space reserved by pmalloc module during initialization.
Type: fix
Change-Id: I91cb35e990869b42094cf2cd0512593733d33677
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Reviewed-by: Steve Capper <Steve.Capper@arm.com>
Florin Coras [Fri, 30 Aug 2019 18:06:35 +0000 (11:06 -0700)]
tcp: send rwnd update only if wnd is large enough
Type: feature
Change-Id: I3e97e05a31806afb6b2e84ecf05fb96d285db92e
Signed-off-by: Florin Coras <fcoras@cisco.com>
Aloys Augustin [Mon, 2 Sep 2019 14:29:19 +0000 (16:29 +0200)]
quic: disable quic plugin by default
Change-Id: I8eb243e80ff043a23cb3efae186164dad6c11ca8
Type: fix
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
Steven Luong [Fri, 30 Aug 2019 17:49:44 +0000 (10:49 -0700)]
tap: interface rx counter not increment correct
vlib_increment_combined_counter takes sw_if_index, not hw_if_index. Using
hw_if_index may work as long as there is no subinterface created to cause
hw_if_index and sw_if_index to differ.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I6db042186eeeacf32250f7ef261af8cd6f5ce56e
Damjan Marion [Mon, 2 Sep 2019 17:00:33 +0000 (19:00 +0200)]
ipsec ip tcp l2: multiarch nodes cannot be declared as static
Credits to ray.kinsella@intel.com who spotted the issue and identified
root cause.
Type: fix
Change-Id: I4afe74c47769484309f6aebca2de56ad32c8041f
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ping Yu [Thu, 22 Aug 2019 17:43:00 +0000 (13:43 -0400)]
tls: some rework based on TLS openssl C API
Type: fix
Change-Id: I5d0ac1fe6a6770ab8b3a9c366d10387718391199
Signed-off-by: Ping Yu <ping.yu@intel.com>
Klement Sekera [Mon, 2 Sep 2019 15:19:41 +0000 (15:19 +0000)]
tests: run vapi tests by default
Type: fix
Change-Id: I7b190507446fca745fc4bc6abbdeed48f55abdb9
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Klement Sekera [Mon, 2 Sep 2019 14:26:26 +0000 (14:26 +0000)]
tests: fix centos detection
Type: fix
Fixes:
defde0f870
Change-Id: Ib81e3610bd0fc22901a902dc76692f1951ead2b8
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Steven Luong [Fri, 30 Aug 2019 18:22:13 +0000 (11:22 -0700)]
vmxnet3: interface rx counter not increment correctly
vlib_increment_combined_counter takes sw_if_index, not hw_if_index. Using
hw_if_index may work as long as there is no subinterface created to cause
hw_if_index and sw_if_index to differ.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: If50412dc1e84c4f1f5b977b58d0e1aeb5ab8ebe6
Florin Coras [Sat, 31 Aug 2019 16:46:24 +0000 (09:46 -0700)]
tcp: fix rx min/max fifo size parsing
Type: fix
Change-Id: Iff4a13da654dbdf7f08bb6d0743b466a1e6be01b
Signed-off-by: Florin Coras <fcoras@cisco.com>
Vladimir Kropylev [Fri, 30 Aug 2019 10:04:06 +0000 (13:04 +0300)]
session: move svm_fifo_clear_deq_ntf to before calling the app callback
Type: fix
in case the app requests another dequeue notification, it should not be cleared
Change-Id: I7e94e8e30ef098f87f5e7f4880af276970ee5b37
Signed-off-by: Vladimir Kropylev <vladimir.kropylev@enea.com>
Steven Luong [Thu, 29 Aug 2019 19:47:57 +0000 (12:47 -0700)]
vmxnet3: per interface gso support
gso option for vmxnet3 is per VPP process currently. There is no reason why
we cannot provide per interface gso support.
Type: feature
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ife962b52221191050dedd18252b859880ccd7599
Michael Yu [Thu, 29 Aug 2019 16:50:16 +0000 (00:50 +0800)]
devices: fix issue of per_interface_next_index
Per interface, next hop graph node can be customized
with vnet_hw_interface_rx_redirect_to_node function,
but it doesn't work well for af-packet type interface.
In current implementation, with function
af_packet_set_interface_next_node invoked next hop graph
node index can be set to apif->per_interface_next_index,
but it's not set to next0 properly for packet processing
in af_packet_device_input_fn.
Type: fix
Signed-off-by: Michael Yu <michael.a.yu@nokia-sbell.com>
Change-Id: I8e132ddd1c3c01b6f476de78546d4a9389b3ff87
Signed-off-by: Michael Yu <michael.a.yu@nokia-sbell.com>
Florin Coras [Wed, 24 Jul 2019 17:27:20 +0000 (10:27 -0700)]
tcp: force zero window on full rx fifo
Type: feature
Change-Id: I7c5684a9f88e56fd62d83a59c14c4e4a6f096b89
Signed-off-by: Florin Coras <fcoras@cisco.com>
John Lo [Thu, 29 Aug 2019 19:40:26 +0000 (15:40 -0400)]
dpdk: enable checksum offload for Intel SRIOV NIC drivers
Type: fix
Signed-off-by: John Lo <loj@cisco.com>
Change-Id: I3ee59106ba45164a4ee3788bf4dcf5bf4c2dc1c2
Florin Coras [Tue, 27 Aug 2019 19:15:43 +0000 (12:15 -0700)]
tcp: improve mss computation
Type: fix
Use different mss for v4 and v6 packets.
Change-Id: Ifcd322c1fd74f749a42bae671dd6cfed8c32b150
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 30 Aug 2019 05:45:04 +0000 (22:45 -0700)]
vcl: initialize ctrl_mq in workers
Type: fix
Change-Id: I1b9c8b0f9292f039b941e18d8aca5d734d5f1e77
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Thu, 29 Aug 2019 19:03:17 +0000 (12:03 -0700)]
vcl: allow non-blocking connects
Type: feature
Change-Id: I55349f482ce6781337f747b2f0d2c0a027c3a675
Signed-off-by: Florin Coras <fcoras@cisco.com>
Florin Coras [Fri, 30 Aug 2019 01:33:24 +0000 (18:33 -0700)]
tcp: track zero rwnd errors
Type: feature
Distinguish between rcv window errors and errors after we advertised a
zero rcv window, i.e., potential window probes.
Change-Id: I6cb453c7aaae456c0a05a8328cfaa55eaca10bf7
Signed-off-by: Florin Coras <fcoras@cisco.com>
Guanghua Zhang [Sat, 24 Aug 2019 02:52:19 +0000 (10:52 +0800)]
session : make sure session layer is enabled when cli operate the sessions.
Type: fix
show session rules tcp
vpp/src/vnet/session/application_namespace.c:34 (app_namespace_get)
assertion `! pool_is_free (app_namespace_pool, _e)' fails
Thread 1 "vpp_main" received signal SIGABRT, Aborted.
Signed-off-by: Guanghua Zhang <ghzhang@fiberhome.com>
Change-Id: I3430339a598a92d0a38826471adeb4547b0b7df4
Benoît Ganne [Thu, 29 Aug 2019 16:16:14 +0000 (18:16 +0200)]
stats: null-terminate default socket name
Type: fix
Fixes:
d991a798ff
Change-Id: I1920a40d7bbb01593676d9d8564158fdba9452bb
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Steven Luong [Thu, 29 Aug 2019 16:50:28 +0000 (09:50 -0700)]
lacp: continuing input packet trace from device driver
lacp gets the packet from the device driver. Let's continue the input
packet trace's trajectory instead of restarting it in lacp-input.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I4d4537e050742a23f74287086d38d39673ebd60f
Simon Zhang [Sun, 25 Aug 2019 07:30:45 +0000 (15:30 +0800)]
ip: remove unused function parameter
Type: refactor
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
Change-Id: I8674ff5f6f6336b256b7df8187afbb36ddef71fb
Yulong Pei [Fri, 23 Aug 2019 09:24:13 +0000 (17:24 +0800)]
lb: fix memcpy error issue
vl_api_prefix_t size is 21 byte, ip46_address_t size is 16 byte, only copy
16 byte of vl_api_prefix_t to ip46_address_t is not correct.
Type:fix
Change-Id: I35ede7836a0c878d39388b29b15d91bb08f87a07
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Florin Coras [Thu, 29 Aug 2019 00:12:32 +0000 (17:12 -0700)]
svm: fix fifo hdr freelist allocation
Type: fix
Change-Id: Ia362ad821db1fd506e973e1844cc3ec74703cc17
Signed-off-by: Florin Coras <fcoras@cisco.com>
Jakub Grajciar [Thu, 4 Apr 2019 08:20:21 +0000 (10:20 +0200)]
bier: API cleanup
Use consistent API types.
Type: fix
Change-Id: I416171c729193e64a68e85a3f1f25d03a9a559d1
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Dave Wallace [Thu, 22 Aug 2019 21:15:54 +0000 (21:15 +0000)]
hsa: clean up vpp_echo json output
Type: style
Change-Id: I8dbf2197b78690b94a346d6ff564648ab42f8235
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Dave Wallace [Fri, 23 Aug 2019 14:37:51 +0000 (14:37 +0000)]
quic: enable stable quic tests
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I041c011ee955acba656b774049b530efe1d50f22
Steven Luong [Fri, 16 Aug 2019 03:30:23 +0000 (20:30 -0700)]
lacp: mark is_mp_safe for show and dump binary API
show and dump binary APIs for lacp neighbors are running in the same thread
as the create and delete interface. There is no need for barrier lock.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Id584bd7408210fcc23b464ef2084f11f88bca58b
Andrew Yourtchenko [Mon, 26 Aug 2019 12:25:42 +0000 (12:25 +0000)]
acl: perform a sanity check of ACL rules before creating ACL
Adding acl with incorrect arguments like 1.1.1.1/24 (instead of 1.1.1.0/24)
don't cause a disaster, but doesn't match either, as some might expect.
Add an explicit sanity check which returns an error.
Type: fix
Change-Id: Id1601f4b9c9887d3e7e70aac419d1f1de0c0e012
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Florin Coras [Tue, 27 Aug 2019 22:13:35 +0000 (15:13 -0700)]
session: fix unbind coverity warning
Type:fix
Change-Id: If4fce6bd9b06ed545d72df847afd6a74cdefe042
Signed-off-by: Florin Coras <fcoras@cisco.com>
Nathan Skrzypczak [Wed, 28 Aug 2019 13:19:17 +0000 (15:19 +0200)]
quic: Fix listener vpp_session_handle
Type: fix
Change-Id: I19f70403e15cd180e9d337fbdad47191de333b34
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Benoît Ganne [Tue, 27 Aug 2019 08:58:59 +0000 (10:58 +0200)]
rdma: fix pending packets check on tx
Fix coverity CID 203636: Control flow issues (NO_EFFECT).
This greater-than-or-equal-to-zero comparison of an unsigned value is
always true. "n_left_from >= 0U".
Type: fix
Fixes:
e7e8bf37f100b20acb99957572f1796f648c2853
Change-Id: Ibbf8c82defb12d6d532345eea657d5f300e6a514
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Neale Ranns [Tue, 27 Aug 2019 12:47:17 +0000 (12:47 +0000)]
ipsec: Add 'detail' option to 'sh ipsec sa'
Type: feature
with detail option prints all details for all SAs
Change-Id: Ic3c423c085dfc849cf9c3e18a6f624b82150d961
Signed-off-by: Neale Ranns <nranns@cisco.com>
Steven Luong [Tue, 27 Aug 2019 14:43:27 +0000 (07:43 -0700)]
interface: Remove residual dpdk bonding code
dpdk bonding code was removed in 19.08. However, there are still references
to VNET_SW_INTERFACE_FLAG_BOND_SLAVE which was set by the already removed
code.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I949a7281e6273f2733dd7532cc4a3bb4f3ce30de
Florin Coras [Wed, 21 Aug 2019 23:20:44 +0000 (16:20 -0700)]
session: move ctrl messages from bapi to mq
Type:refactor
Moves connect, disconnect, bind, unbind and app detach to message
queue from binary api. Simplifies app/vcl interaction with the session
layer since all session control messages are now handled over the mq.
Add/del segment messages require internal C api changes which affect all
builtin applications. They'll be moved in a different patch and might
not be back portable to 19.08.
Change-Id: I93f6d18e551b024effa75d47f5ff25f23ba8aff5
Signed-off-by: Florin Coras <fcoras@cisco.com>
Ole Troan [Tue, 27 Aug 2019 13:05:27 +0000 (15:05 +0200)]
api: revert use string type for strings in memclnt.api
This reverts commit
2959d42feb576c0e00c28c4e27658b25f6c783e9.
Lacks client side fixes.
Type: fix
Change-Id: Ib94b18e74325cede41ed1733e57896f17a952526
Signed-off-by: Ole Troan <ot@cisco.com>
Neale Ranns [Tue, 27 Aug 2019 12:26:14 +0000 (12:26 +0000)]
ipsec: Fix NULL encryption algorithm
Type: fix
Ticket: VPP-1756
the block-size was set to 0 resulting in incorrect placement of the ESP
footer.
add tests for NULL encrypt + integ.
Change-Id: I8ab3afda8e68f9ff649540cba3f2cac68f12bbba
Signed-off-by: Neale Ranns <nranns@cisco.com>
Klement Sekera [Tue, 27 Aug 2019 09:20:33 +0000 (09:20 +0000)]
ip: reassembly: remove unnecessary code
Type: refactor
Change-Id: I30cb324006c3c6ab88d01c044cf80fab3a34f13a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Ole Troan [Thu, 22 Aug 2019 07:02:59 +0000 (09:02 +0200)]
api: use string type for strings in memclnt.api
Explicitly using string type in API allows for autogenerating tools to print
strings instead of hex-dumping byte strings.
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I573962d6b34d5d10aab9dc6a5fdf101c9b12a6a6
Signed-off-by: Ole Troan <ot@cisco.com>
Mohsin Kazmi [Thu, 22 Aug 2019 16:40:28 +0000 (18:40 +0200)]
gso: fix segmentation when gso_size greater than vlib buffer size
Type: fix
Ticket: VPP-1751
Change-Id: I5ffb078492adc97374290de404f2ec0102b75184
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Andrew Yourtchenko [Tue, 20 Aug 2019 16:31:34 +0000 (16:31 +0000)]
misc: 19.08 new features
The full RELEASE.md diff is
b610f2022c9f4e10a922e7b57c80ec77cd45d021
Change-Id: Ide6d85d41bdc836a03390a50ab94f6ebbaae0b28
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
1c586de48cc76fc6eac50f5d87003e2a80aa43e7)
Andrew Yourtchenko [Sat, 17 Aug 2019 14:57:13 +0000 (14:57 +0000)]
misc: VPP 19.08 Release Notes
Change-Id: I81c7ad50c66b4b8d690e87aad1f3c16af065fc85
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
b610f2022c9f4e10a922e7b57c80ec77cd45d021)
Andrew Yourtchenko [Mon, 26 Aug 2019 12:58:48 +0000 (12:58 +0000)]
ip: ip6_preflen_to_mask incorrect result for prefix len > 64
The as_u64[0] in the result was not correctly filled in for
longer prefix lengths.
Type: fix
Fixes:
1c7104514c
Change-Id: I871772c618475396d1c1c4c699ff77e35097f07e
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Benoît Ganne [Wed, 21 Aug 2019 13:11:43 +0000 (15:11 +0200)]
rdma: use rings for buffers management
Refactor rdma driver for improved performance and prepare for raw
datapath access.
Type: refactor
Change-Id: Iae31872055a6947708ea9f430bd1dc083ea63b5a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Florin Coras [Fri, 23 Aug 2019 17:28:01 +0000 (10:28 -0700)]
tcp: fix byte tracker samples flush
Type: fix
Change-Id: I3b4cb8fc17387693d6ad6cdef004ca99cd56bc23
Signed-off-by: Florin Coras <fcoras@cisco.com>
Ole Troan [Fri, 23 Aug 2019 12:19:37 +0000 (14:19 +0200)]
vppapitrace: add text output
Add new argument --todump, to mimic the VPP
api trace dump output.
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ia8c845b321ef9d55dd6e2f388165ca5498406ab6
Dave Barach [Thu, 22 Aug 2019 23:32:49 +0000 (19:32 -0400)]
dns: fix trivial multi-thread deadlock
Add a simple lock trace mechanism
Type: fix
Ticket: VPP-1752
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Idc82b1ad59adb0f7c185d27ced57e9a4c25ce62f
Dave Wallace [Thu, 22 Aug 2019 00:32:29 +0000 (00:32 +0000)]
tests: move plugin tests to src/plugins/*/test
- Relocate plugin tests for 'make test' into
src/plugins/*/test so that plugin test cases
are co-located with the plugin source code.
Type: refactor
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I503e6a43528e14981799b735fa65674155713f67
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>