When segmenting, new buffers must inherit the original buffer trace
handle.
Type: fix
Change-Id: Ibd1859a501b2862906dfc563b98652cfee5681da
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
code added to free the zero copy interface rx/tx queue buffers during disconnecting.
As ddc9eb4 find the last official solution introduced core in ut. This does not.
Type: fix
Signed-off-by: Changqian Wang <changqwa@cisco.com>
Change-Id: I971ee164e6d4331a85feb9e65d6702d771c86985
(cherry picked from commit 00b2d74d1f58b9357e8d955ad7410fb608490904)
Type: fix
- Initialize max_seq on both transmitted and retransmitted segments
- Keep track of segments that have been sacked.
- Track new data segments sent during recovery
Change-Id: Ice55231a3da200ae6171702e54b2ce155f831143
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit d6ae4bf13a7819d64d128d196d491af4700fa948)
Type: fix
Ensure that sack retransmit logic does not try to inadvertently send new
data.
Change-Id: Idfda19643577d9c1b58e2af8d8283cabfbaf98e6
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 81cb8e4092991d3fd1e24f0862c12548a2d4c714)
Coverity gets confused by ASSERT((l) <= vec_max_len(v)) when l is 0.
Type: fix
Change-Id: I247d7015b148233d8f195bcf41e9a047b7a21309
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit 70d5d4fa09520bd5825b49960ae896beca3535e8)
IPsec zero-es all allocated key memory including memory sur-allocated by
the allocator.
Move it to its own function in clib mem infra to make it easier to
instrument.
Type: refactor
Change-Id: Icd1c44d18b741e723864abce75ac93e2eff74b61
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit 78af0a8c5ff1a33ff8dccb1b2ea6ffadb8ef7b62)
Set high ssthresh out of the box and make configurable
Type: fix
Signed-off-by: Sergey Ivanushkin <sergey.ivanushkin@enea.com>
Change-Id: Iba1549b4ee55e51468ad0b28ef3d26a85fa9cae0
(cherry picked from commit c30318da220953610820a2e7cd957da7046eaf4b)
Type: fix
Connect ctrl message recently outgrew the maximum ctrl msg size, so
increase the limit. Also add static asserts for messages that could
potentially exceed the limit.
Change-Id: I0d3e32e0d4d67d7e222cff14ddba59a0c3fb8b00
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit e24a4bc023b880cb01aeaf8ffea98f44dd66ef4a)
The test for ND event suppression reused the previous test run
ipv6 address, and would sometimes consider that a duplicate,
and therefore suppressing that one too.
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I1b115aa4eba9d57770fa03fcf38b7a1c251cfe88
(cherry picked from commit df0191ead2cf39611714b6603cdc5bdddc445b57)
We reserve 40 slots in cpu->copy array prior to copy out to avoid overflowing
the array. However, 40 is not enough for the jumbo frame because desceiptor
buffer len is likely at 1536. Change the reserve to 200 and add ASSERT to avoid
encountering the same problem in the future.
Type: fix
Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: Ibf0c03c4b4f33e781d5be8679ccd6c3a4b4a646d
(cherry picked from commit 7331005c16d0e1499080899b2a0676a0cd945595)
l2-flood and bier nodes reset vector length without updating it to its
effective size. Introduce a helper to do it (this allows ASAN to keep
track of the new vector size).
Type: refactor
Change-Id: I2d652550c440f0553a2b49c3ee3d37b49ebc16c3
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit 8a4bfdae87286ed281df855c58b669eb6b76aaf8)
Some testclasses (e.g. IPSec) have methods with the same names,
this causes a race when running in parallel to save the API and
move it into the test's directory - the name of the file has
only the test method name as a discriminator.
Saving two traces from two VPP instances "succeeds", in that
it silently overwrites the file. But only one mv operation
works - the other gives an error "file not found" and fails the test.
Solution: add the PID of VPP under test to the API dump filename,
this way the filenames become guaranteed unique and the race is avoided.
Change-Id: I1bb47ed73369fea0f1bfbf907588a51e2cabfb7f
Type: test
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit 586d3edf49f5dd8cd3e4f836afd562e21766914d)
Needed a bit of foreach_vlib_main(...) action to turn on/off all
instances of vm->dispatch_pcap_enable, and to pick up the pcap_main_t
pointer from vlib_global_main.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I49b69b87934c7dc7a9835cd07aa2c5c4d3c79f18
(cherry picked from commit 349cd1af77a27962e9475e9fa9c0ed15e2af23de)
Type: fix
- when the fifo is wrapped, and if applicable, insert a new chunk after
the tail-chunk and rebuild the rb_tree.
- make sure that this new algorithm can be applied only when the fifo is
used by a single thread (master-thread of the fifo).
Signed-off-by: Ryujiro Shibuya <ryujiro.shibuya@owmobility.com>
Change-Id: I3fc187bc496ea537ca24381e4abc08d2906c9e03
(cherry picked from commit 8e20fe7ab445e2de80caabb298aef8a658f6d4ab)
Type: fix
Use api with explicit thread index to retrieve tls contex on close.
Change-Id: Ibdc4338747300b7fc8f91ef3e10bcd48ce7ae366
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 6faac1622e0d5352da987c73a6f3f1ec55896116)
Rest pacer on ack reception if we haven't recently sent anything.
Type: feature
Change-Id: I820bacd81b65130052dfafbfcbe6ca4553069fbc
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit c31dc31f84961033ecb6354811e0c360b6cf5f79)
Top level makefile is using vpp as the default platform. The other place
where platform is specified has native as the default. Unite them to the
only currently supported platform - vpp.
Type: make
Change-Id: Idb12ccc3056dd6be640a2d6763dc30e4f789d2ac
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
(cherry picked from commit 664ec91fdea75c90c3b9c8086a9a97df32a6f91b)
Copy sw_if_index value instead of using pointers to original
bif->slaves content which could be overriden by eg. vec_del1().
Type: feature
Change-Id: I37e458effd6b2367479574f7bd3facd4e93bada4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit cc3aac05697976b512ce68017ca02b27d613eff2)
Reseting vector length confuses ASAN and does not reset data either.
Only reset data instead.
Type: fix
Change-Id: Id60b8333df28a5b636a9d302b987bbad95c85c38
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit a9f1e7d4fd764b4f68e830528dbd296921050293)
A sizable number of tests call pg_start() to get the packets flowing and then
immediately expect to have the entirety of the packets gone through.
This works on powerful and unstressed hardware, but fails in beautifully random
ways under load.
This also necessitates the complicated logic of remembering the "zombie captures",
then sleeping for some time before cleaning them up....
The solution is simple: in pg_start(), start the generators, wait till they
all finish, clean up, done.
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I930e51b7aae39c9841d22dd905a4d13a465a672b
Type: test
(cherry picked from commit 8d829f6c480cdd6536537fc49356baa1878b9570)
Intermittently, a test would start VPP, but no testcases would execute.
This would be more probable apparent during the high load or if there
is another testcase dumping the core at that moment.
Adding the logging to the connection revealed it was the stats socket
connection erroring with error -2. Increasing the deadline
from 3 seconds to 5 minutes has eliminated this error.
Change-Id: I40bd7e642abb9e2aef0238c612e4c34781de5db2
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Type: test
(cherry picked from commit 4f05a8e408cba09057841d97cd5e7da3058836d1)
Rather than only using time-based method of periodically checking
whether the pcap file appeared, first check that the packet generator
has stopped. To make this change fail-safe, have a 5-minute timeout
on this activity, just in case the things go terribly wrong.
Type: test
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: Id16b2802b2de8a4cafb5d9f0a8c9ba62ec89dc32
(cherry picked from commit 3d36f19a0febaed532bd255a150504f7af8f18c2)
This change is designed to help the uninformed find the right way
to run extended tests by using the test-all[-debug] targets.
'make test EXTENDED_TESTS=y' fails to build as it has a dependency
on 'vom-install' which is conveniently included in test-all[-debug].
- clarify test-all[-debug] description and
make test-help description
- Also align indentation of make help output
Type: style
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: Ief54cc8a5af68c052aacb0d660237c5eb63451b5
(cherry picked from commit 2777ec761514fc0838ad11e6232ad97897663356)
Type: fix
Some cli processes, including configuring an test flow
on an i40e interface consume more than the currently
available stack space.
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I3df53d251cd43286f94647384d6e50a463bad15c
(cherry picked from commit 2fd44a00aa26188ca75f0accd734f21758c199bf)
Fix a day-1 bug, possibly dating back as far as 2002. The zap64() game
involves fetching 8 byte chunks, and clearing octets not to be
included in the key.
That's fine *unless* the 8-byte fetch happens to cross a page boundary
into unmapped or no-access space.
Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4607e9840032257c96ba7387f86c931c0921749d
(cherry picked from commit 7e2cea3d26701ff1d80fda7d8ca907890e3e7baa)