threads vcl workers scenario
Type: fix
In multiple threads vcl workers scenario, multiple vcl workes can create
sessions with same index. Because only one vls worker created, key of
session_index_to_vlsh_table is duplicated.
Signed-off-by: hanlin <hanlin_wang@163.com>
Change-Id: I7e1f5bc471adc5378194452aef85e611f5d0df1d
Make sure session is in non-closed state after non-blocking connect to
ensure cleanup is performed, if needed.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic1533b9864828f875c840dfdfeed08bf32d10651
This patch adds the API for vnet/flow infra.
Currently this API supports the below flow types:
VNET_FLOW_TYPE_IP4_N_TUPLE
VNET_FLOW_TYPE_IP6_N_TUPLE
VNET_FLOW_TYPE_IP4_N_TUPLE_TAGGED
VNET_FLOW_TYPE_IP6_N_TUPLE_TAGGED
VNET_FLOW_TYPE_IP4_L2TPV3OIP
VNET_FLOW_TYPE_IP4_IPSEC_ESP
VNET_FLOW_TYPE_IP4_IPSEC_AH
VNET_FLOW_TYPE_IP4_GTPU
All the above flows are tested with Intel E810/X710 NIC
Type: feature
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: Icb8ae20cab9bdad6b120dddc3bd4fb1d85634f3f
Type: fix
In ip6_neighbor_probe(), if the interface is not enabled for ip6,
return NULL and skip trying to build a packet.
If the interface is not enabled, its mcast adjacency will be set to
~0 and a seg fault will ensue.
Change-Id: I825c9f40a0d5b2a77f788ac8dbd618138706383d
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Endian handlers was not registered for reply messages.
Causing endian-neutral handlers to crash.
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Id14173300ee1ab2601e92d58c70d2fa260814b69
- check input sw_if_index to make sure it is sane. Coverity actually
complains about it.
- return rv. Some of the APIs handlers were not passing back the rv.
Type: improvement
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I8378ea948af561ba2bd9b02fb10bf4f9df2a2cd2
- Display the interface name upon successfully creating the interface.
- Don't go silent when error occurs. Be explicit about it.
Type: improvement
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ie4fdaf323f8b3833ad4a7af3872290141204aba8
To avoid ridiculous pointer gymnastics in golang
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Ic5a641c18281970e2b9bc3013a54cfc3ae92e372
Type: fix
pci_types.api lives in vlib/pci which wasn't included
in the generate_json.py script
Change-Id: I15649786282584b7aefb9ace83c5154eb697b50b
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Make sure payload_proto variable is set properly in vnet_ip_mroute_cmd()
function. This avoids using an uninitialized payload_proto value which
could lead to assertion failure when using e.g. the ip mroute add
command.
Type: fix
Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: I8b1d1df02e80150836b7b0448814d8f99747eeed
'type' is a keyword in golang, so s/type/event_type/ in elog.h and
elsewhere.
Add vec_len_not_inline(...), elog_write_file_not_inline(...) and
elog_read_file_not_inline(...) since the inline forms aren't usable.
More such tweaks may follow.
Type: improvement
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I9a80a6afa635f5cdedee554ee9abe400fafc1cb6
This addresses problem with incorrect sorting of artifacts in the per-patch packagecloud repositories
for throttle branches, by slightly changing the version string for the non-released (per-build) artifacts:
1) the rc1 and rc2 artifacts now will have the count of
commits since tag (0) and the explicit commit hash
2) the builds after version XX.YY but before XX.YY.1
are named as if the version was "XX.YY.0"
Type: fix
Change-Id: Ib69a59ee98aa296c5cb24b183bba807b6cb3c05c
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
There can be a race condition in the case
a thread tries to do a bihash_search while
another instantiates the bihash.
Type: fix
Change-Id: Ic61b590763beb409e112957c43a5a66cd10afb28
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Generate a semver define for API modules in the VPP side C generator.
E.g in map.api_types.h
\#define VL_API_MAP_API_VERSION_MAJOR 4
\#define VL_API_MAP_API_VERSION_MINOR 2
\#define VL_API_MAP_API_VERSION_PATCH 1
Type: improvement
Change-Id: I2ab86154e85e26fb075c4e91a01ff3692640654b
Signed-off-by: Ole Troan <ot@cisco.com>
fib table removal would leave lingering sessions in vpp
this patch is aimed at solving this issue by grouping
sessions by source and destionation fib. if one of the
fibs gets removed this grouping is tagged as expired
and session won't be passed to non existing fib table
Ticket: VPPSUPP-93
Type: improvement
Change-Id: I45b1205a8b58d91f174e6feb862554ec2f6cffad
Signed-off-by: Filip Varga <fivarga@cisco.com>
Add deq request on ct fifo if present and clear event when session is
removed from epoll group.
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I8a20342879b3aac2f8fe8171556baaf9c992363b
vrf table may be dynamically added or deleted. When the table is deleted,
clients who use the corresponding vrf table may need a callback to
do the clean up. The mechanism added here is cloned from
VNET_SW_INTERFACE_ADD_DEL_FUNCTION.
Type: improvement
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I08635c715cd7361a6c359b90890dd3545b0da94c
The included image was pulling in figure 2, change to the correct
figure 11.
Type: docs
Signed-off-by: Christian Hopps <chopps@labn.net>
Change-Id: I3679916364753fc682d1d1713fce952de398e626
Some statistics counters were implemented as error counters. Move them
to stat segment, where they belong.
Type: improvement
Change-Id: I5600bec1b4e0496282297374ec1e79d909cdaf8a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
The "ACL as a service" lookup infra is shared, so a global heap must
be used.
Type: fix
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I86894254b737392c1968b6a581b5a37590376428
Represent pointers directly in shared memory and require clients to adjust for
shared memory segment being mapped at different base address.
Deprecated: stat_segment_pointer() / stat_segment_offset()
Added: stat_segment_adjust()
Bumped the stat segment version to 2.
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I33e756187b8903b45dcd353e6c1a101b7a4acb79
Currently, mutlti-threads only support one dispatch thread and multiple
worker threads, eventually only dispatch thread is a vcl worker and can
interact with epoll.
This patch will register all threads as vcl worker, and then each
thread can interact with epoll now. Moreover, session migration also
supported, such as socket created in thread A and used (bind, connect
and etc.) in thread B.
Type: feature
Signed-off-by: hanlin <hanlin_wang@163.com>
Change-Id: Iab0b43a33466968c1423d7d20faf1460c8589d91
In unions all representations of the union are decoded.
Which means trying to decode something that isn't an address
might have invalid address family types.
Type: fix
Ticket: VPP-1884
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Id3381ef8cc885952c1eb488ebc70e276eaceb366
add new api stat_segment_set_timeout_nsec to limit time waiting for vpp
in_progress state.
Change-Id: Ic78a97bc5013d67d7e4bbcc4a6f0ef918f9f9b33
Type: improvement
Signed-off-by: Ole Troan <ot@cisco.com>