Age | Commit message (Collapse) | Author | Files | Lines |
|
Type: refactor
Change-Id: I01dba12a7f8aa2fa6d2e4113c91dc97e638aca77
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: refactor
Change-Id: Ia5a7ebd5c8492326f5bf2f1264f1c5ef38ccb4dc
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
The per-protocol offload flags only make sense if F_OFFLOAD is set on
the vlib buffer main flags.
vnet_calc_checksums_inline is called from many places which should do
this check and don't, moving the check to this function is less error
prone and shouldn't have an impact on performance since the function
is always_inline.
Type: fix
Change-Id: I0297f109f31e409f07bfbaea3cd8b90c659658c4
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
|
|
- rename node to more meaningful name
- introduce lookup tables
- enable multiarch
- quad-loop node
- enqqueue to next instead of enqueueing to node
Type: improvement
Change-Id: Ibb208047ae04bb6cfe56db558d3b8938bc14b4fe
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: fix
Change-Id: I3b37257e86175743a7bac80c531491565f0a8dcd
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: refactor
Change-Id: If1772980dbdbde1fbf3d1989daa40599e9f23e8c
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
For portabiliy reasons it is better to have all wrapped in clib code.
I.e. instead of using getcpu() we have clib_get_current_numa_node () and
clib_get_current_cpu_id().
Type: refactor
Change-Id: I29b52d7f29bc7f93873402c4070561f564b71c63
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: fix
Change-Id: Ic32550ee9c5d76d232d8b67a7810611f6c8b9177
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Introduce MAX_CPUS parameters to control maximum number of CPUs used by
VPP(s) during testing, with default value 'auto' corresponding to all
CPUs available.
Calculate test CPU requirements by taking into account the number of
workers, so a test requires 1 (main thread) + # of worker CPUs.
When running tests, keep track of both running test jobs (controlled by
TEST_JOBS parameter) and free CPUs. This then causes two limits in the
system - to not exceed number of jobs in parallel but also to not exceed
number of CPUs available.
Skip tests which require more CPUs than are available in system (or more
than MAX_CPUS) and print a warning message.
Type: improvement
Change-Id: Ib8fda54e4c6a36179d64160bb87fbd3a0011762d
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Type: improvement
Change-Id: I8715631718dca9bc7d7b364451b137484aadd58e
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I94b8063c9d8f9b811589c6815cb5c8ca6220f2b5
|
|
Move scapy packet generation code out of vpp object and into the test
case.
Type: test
Change-Id: Ib4de7409eefb79fc59f9815bed3befe5ecde483c
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1d3677923ab28325380c4a9e8469da83077262a9
|
|
make test failed on ubuntu 18.04
File "/vpp/src/vpp-api/python/vpp_papi/vpp_stats.py", line 135, in connect
socket.close(mfd)
AttributeError: module 'socket' has no attribute 'close'
Due to ubuntu 18.04 using python3.6 and
socket.close() is introduced since python3.7
Using os.close to replace socket.close as mfd is a memory fd
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: I6d980fc87ae6c77bbed416879f9b2fcd0a0abe6a
|
|
Type: improvement
Change-Id: I9baa845ecab8655e0623453666092d2dbc674b0f
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: fix
Fixes: ca1812dbe714fc8e4de13f88df2d3b830d95a2c9
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Change-Id: I657be40689caa0c9e202fb411da6323aafeab57e
|
|
u16x16_from_u8x16() and i16x16_from_i8x16() call intrisics
_mm256_cvtepu8_epi64 and _mm256_cvtepi8_epi64. But they are not seems
doing the right data conversion from the name of the wrappers.
The correct intrinsics been called should be _mm256_cvtepu8_epi16
and _mm256_cvtepi8_epi16.
Type: fix
Change-Id: Id71de6ae1a266a370f11c33a46684202be766c43
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
|
|
This patch fixes a vxlan flow type checking bug which is introduced in
commit 7a016e87e473.
It is the native avf instead of dpdk that doesn't support vxlan flow offloading.
So this patch removes Vxlan flow supporting in native avf_plugin and adds
the vxlan flow back to dpdk_plugin.
Type: fix
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I1a72629cee462b890327c589c846f6d532b2d61d
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I11eac12d2ae68a713e78ef68d09b692fce48c18e
|
|
Type: fix
Change-Id: Iefb150a60b39d419d7dde35c80fbcba3a3a0d1e1
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: Ie8ebbbcf5e93337036998d6ba8dac393b20ebc72
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: feature
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ifdd6024daf044751895bb8d2deabad41d3a80c92
|
|
Type: fix
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I215b660a466e0579918e49de543163fd28f95c22
|
|
The memory region is already registered right above, looks like a
copy/paste error.
Type: fix
Change-Id: I97aed821e719e1a34ac38c86d0473a8fdd671d4e
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Adding test for NAT44-ED subplugin.
Type: test
Change-Id: I10ce3d3ca8cb976ee9879efe77cb600df0102147
Signed-off-by: Filip Varga <fivarga@cisco.com>
|
|
Current rdma input L3 validating behavior for scalar path is:
if any packet L3_OK flag matches, then unset skip_ip4_cksum.
The correct behavior should be if any packet L3_OK NOT match,
then unset skip_ip4_cksum. The logic is also different from
the vector path. This patch fixes the wrong behavior for scalar path.
Type: fix
Signed-off-by: Tianyu Li <tianyu.li@arm.com>
Change-Id: I5ca5ed3aa0c07d441f3c87b33f03ea8f7a3c9826
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1c38abde67c2f9be22186359a39ebc3a769b4a7f
|
|
Type: fix
Avoid complaint that we're potentially incrementing ii which could be
null.
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I8511c07b1c2f260cc0e526d9aefeb4a051d98edf
|
|
Type: fix
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I40732dfb4fee4a5cfd699a8badea13d070f6b367
|
|
Type: improvement
Change-Id: I466fd0324d53e8d68b53a2c84d97a722be90f4a0
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I0ad0fa42f056b5797ba71d6972a44273c13bb97e
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Type: improvement
Change-Id: I91ecf0bff2ddd43ab5cf0f03ed2882882154557b
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This patch fixes the below bugs in avf flow:
1. remove the VXLAN flow as it is not yet supported
2. fix a typo in IPv6 flow
3. fix the wrong type of the AH flows
Also did some cleanup in this patch
Type: fix
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I5eae131f1e89071364a41b7006a00e8425089a4f
|
|
See https://tools.ietf.org/html/rfc8926 3.4. second paragraph Opt Len
Change-Id: I191d835651b2fa64eeb4ec4271497cf3342554be
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: fix
|
|
Introduce a new option DEBUG=attach to run a test against existing
already running vpp. A new target 'make test-start-gdb' will spawn VPP
in gdb for this purpose. Customization options explained in test-help.
Type: improvement
Change-Id: Ia160a85b33da3b2df292d44bb95729af9dd9da96
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Type: improvement
This patch combined cryptodev op and cryptodev raw API data
paths into one and makes the engine run-timely select which
data path is used: if all cryptodev devices support
RTE_CRYPTODEV_FF_SYM_RAW_DP feature flag, the raw data path
API is used, otherwise the traditional data path is used.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: Ibbd7c4405288bd9a48a34878954fd3040df7b4ad
|
|
The /sys filesystem is not always accurate when switching network
namespaces. Using netlink should work in more situations.
Type: improvement
Change-Id: I71611f14319820469ea7794eec5b7c6c70e2be6d
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
|
|
It is more appropriate to use log_debug instead of log_warn when inoking
clib_file_add and clib_file_del.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I544d97037cfca3f22ce94242aef0c7b0fea2fa9b
|
|
Need to add msg_id_base with VL_API_AVF_DELETE to properly set the
correct is_mp_safe variable.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I20f6e9441727fb7ffc132965b93c0a90482e1a52
|
|
When deleting an avf interface which is not the very first interface
that was created (dev_instance == 0), VPP crashes.
The reason is every avf interface delete always removes the very first
device instance due to ad->dev_instance was wiped out prior to the
statement pool_put_index (am->devices, ad->dev_instance)
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I69bd1588aab9a176f8eef46be7aa5063f5d29482
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I07920a61e64cf1556c6b795d573cbd6a74675c1c
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ic1d88c01e48bb926932030c3c5a03f35e345e9eb
|
|
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Id2c06f49bcae1a26a2d16d58f9da7a4d3175bf3c
|
|
The crypto op flags must be reset to frame flags minus invalid values
depending of the operation, instead of forcing them to specific values.
Type: fix
Change-Id: Ib02c2a738bbca6962394b3c03088d516d0da56a0
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Improve the code by removing another kind of wrappers.
Type: improvement
Change-Id: I5292ef6c1761e3c6c2edd15f2aa625dac26c3732
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Experimental support for session layer interrupt mode. When enabled
(use-private-rx-mqs must be set) session queue node switches to
interrupt state when lightly loaded, i.e., no events and less than 1
vector/dispatch.
Because transport protocols require a periodic time update, when in
interrupt state the session queue node workers register a timerfd with
the unix-epoll-input node that when triggered signals, i.e., wakes up,
the queue node. Under light load, the timer is set to trigger every 1ms
whereas if no session is allocated, the worker moves to idle state and
the timeout is set to 100ms.
Type: feature
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I905b00777fbc025faf9c4074fce4c516cd139387
|
|
Initialize the local variables as to prevent first fall
through one by one processing; skip prefetching rather
than doing one by one when count below 12.
Type: improvement
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Change-Id: If02935da081e24f7cfe408811ccf6922cf982092
|
|
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I998c0686f9f7dc556dda8b28e23bbed127d0aafc
|
|
Patch 24601 introduced description into template. In vhost_user_process,
template is reused inside the while loop to call clib_file_add. But
description is allocated outside of the loop only once. As a result, the
same storage for description is being referenced by all instances of call
to clib_file_add. As long as we don't call clib_file_del, we may be
good with multiple fds sharing the same storage for the description. When
one of the fds disconnects and frees the description, the other fds is
holding onto the free memory pointer. Bad news eventually happens when
another fd disconnects and frees the description that was already free
previously.
The fix is to move the allocation of description inside the loop to avoid
sharing.
Type: fix
Fixes: gerrit.fd.io/r/c/vpp/+/24601
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ie670931acdc2c7b851982d98fd0d837284a19036
|
|
coverity is trying to outsmart human by guessing on COPY_PASTE_ERROR.
Have it your way.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I0239c9745e21384aebbaf9e977962746b81ded58
|