| 21cab84f | 24-Jan-2025 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
bitops: find first set bit
Provide toolchain abstraction for __builtin_ffs{,l,ll} gcc built-in intrinsics. Add associated unit tests.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Si
bitops: find first set bit
Provide toolchain abstraction for __builtin_ffs{,l,ll} gcc built-in intrinsics. Add associated unit tests.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com>
show more ...
|
| eb29e625 | 13-Dec-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/bonding: fix active backup receive test
The test had incorrect assumptions about how active backup should work. When in active backup mode, the secondary (not primary) ports should be ignored.
test/bonding: fix active backup receive test
The test had incorrect assumptions about how active backup should work. When in active backup mode, the secondary (not primary) ports should be ignored. The test was always broken since initially written but earlier bug was masking the part of the test which tested non-primary ports.
Bugzilla ID: 1589 Fixes: 112ce3917674 ("test/bonding: fix loop on members") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Huisong Li <lihuisong@huawei.com> Tested-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
| 06e28566 | 06-Dec-2024 |
Konstantin Ananyev <konstantin.ananyev@huawei.com> |
test: add stress test suite
Add a new test suite which purpose is to run 'stress' tests: main purpose is put a pressure to dpdk sync algorithms to flag their misbehaving/slowdown/etc. Right now it c
test: add stress test suite
Add a new test suite which purpose is to run 'stress' tests: main purpose is put a pressure to dpdk sync algorithms to flag their misbehaving/slowdown/etc. Right now it consists from just 2 test-cases: meson test --suite stress-tests --list DPDK:stress-tests / ring_stress_autotest DPDK:stress-tests / soring_stress_autotest
These tests are quite time consuming (~15 mins each), that's another reason to put them into a separate test-suite.
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| 70581c35 | 06-Dec-2024 |
Konstantin Ananyev <konstantin.ananyev@huawei.com> |
test/ring: add unit tests for soring API
Add both functional and stess test-cases for soring API. Stress test serves as both functional and performance test of soring enqueue/dequeue/acquire/release
test/ring: add unit tests for soring API
Add both functional and stess test-cases for soring API. Stress test serves as both functional and performance test of soring enqueue/dequeue/acquire/release operations under high contention (for both over committed and non-over committed scenarios).
Signed-off-by: Eimear Morrissey <eimear.morrissey@huawei.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| 700989f5 | 06-Dec-2024 |
Eimear Morrissey <eimear.morrissey@huawei.com> |
ring: make dump function more verbose
The current rte_ring_dump function uses the generic rte_ring_headtail structure to access head/tail positions. This is incorrect for the RTS case where the head
ring: make dump function more verbose
The current rte_ring_dump function uses the generic rte_ring_headtail structure to access head/tail positions. This is incorrect for the RTS case where the head is stored in a different offset in the union of structs. Switching to a separate function for each sync type allows to dump correct head/tail values and extra metadata.
Signed-off-by: Eimear Morrissey <eimear.morrissey@huawei.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| 2cf3a8d3 | 06-Dec-2024 |
Konstantin Ananyev <konstantin.ananyev@huawei.com> |
test/ring: fix init with custom number of lcores
ring_stress_autotest fails to initialize the ring when RTE_MAX_LCORE value is not a number of 2. There is a flaw in calculation required number of el
test/ring: fix init with custom number of lcores
ring_stress_autotest fails to initialize the ring when RTE_MAX_LCORE value is not a number of 2. There is a flaw in calculation required number of elements in the ring. Fix it by aligning number of elements to next power of 2.
Fixes: bf28df24e915 ("test/ring: add contention stress test") Cc: stable@dpdk.org
Reported-by: Phanendra Vukkisala <pvukkisala@marvell.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| b5662e6d | 10-Jan-2025 |
Andre Muezerie <andremue@linux.microsoft.com> |
test: replace packed attributes
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __r
test: replace packed attributes
MSVC struct packing is not compatible with GCC. Replace macro __rte_packed with __rte_packed_begin to push existing pack value and set packing to 1-byte and macro __rte_packed_end to restore the pack value prior to the push.
Macro __rte_packed_end is deliberately utilized to trigger a MSVC compiler warning if no existing packing has been pushed allowing easy identification of locations where the __rte_packed_begin is missing.
Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com> Reviewed-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
show more ...
|
| f81cdd72 | 05-Feb-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/hash: replace use of term segregate
Change comment based on inclusive naming recommendations.
https://inclusivenaming.org/word-lists/tier-3/
Signed-off-by: Stephen Hemminger <stephen@networkp
test/hash: replace use of term segregate
Change comment based on inclusive naming recommendations.
https://inclusivenaming.org/word-lists/tier-3/
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
show more ...
|
| bccabd15 | 05-Feb-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/red: remove use of word master
No need to use term master here.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com> |
| 554e802e | 20-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/cfgfile: add check for file removal
The test makes temporary files for parsing and then cleans up. It was not checking the return value from the remove step which makes Coverity unhappy.
Cover
test/cfgfile: add check for file removal
The test makes temporary files for parsing and then cleans up. It was not checking the return value from the remove step which makes Coverity unhappy.
Coverity issue: 451207, 451209, 451212, 451213 Coverity issue: 451215, 451217, 451222, 451225 Fixes: be22019a58c4 ("test: restore cfgfile tests")
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| 357f915e | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/eal: fix lcore check
The expression for checking which lcore is enabled for 0-7 was wrong (missing case for 6).
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: b0209034f2bb ("test/
test/eal: fix lcore check
The expression for checking which lcore is enabled for 0-7 was wrong (missing case for 6).
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: b0209034f2bb ("test/eal: check number of cores before running subtests") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
show more ...
|
| b3e64fe5 | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/eal: fix loop coverage for alignment macros
The test loop was much shorter than desired because when MAX_NUM is defined with out paren's the divide operator / takes precedence over shift.
But
test/eal: fix loop coverage for alignment macros
The test loop was much shorter than desired because when MAX_NUM is defined with out paren's the divide operator / takes precedence over shift.
But when MAX_NUM is fixed, some tests take too long and have to be modified to avoid running over full N^2 space of 1<<20.
Note: this is a very old bug, goes back to 2013.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 1fb8b07ee511 ("app: add some tests") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
| c6f484ad | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/crypto: fix TLS zero length record check
The code was duplicating the same condition three times? Reading the commit message, the intention was:
Add unit tests to verify the zero len TLS r
test/crypto: fix TLS zero length record check
The code was duplicating the same condition three times? Reading the commit message, the intention was:
Add unit tests to verify the zero len TLS records. Zero len packets are allowed when content type is app data while zero packet length with other content type (such as handshake) would result in an error.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 79a58624369a ("test/security: verify zero length TLS records") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Anoob Joseph <anoobj@marvell.com>
show more ...
|
| 8c08b10d | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/event: avoid duplicate initialization
The event_dev_config initialization had duplicate assignments to the same element. Change to use structure initialization so that compiler will catch this
test/event: avoid duplicate initialization
The event_dev_config initialization had duplicate assignments to the same element. Change to use structure initialization so that compiler will catch this type of bug.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: f8f9d233ea0e ("test/eventdev: add unit tests") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
show more ...
|
| 0151b807 | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/security: fix IPv6 extension loop
The parenthesis were in the wrong place so that comparison took precedence over assignment in handling IPv6 extension headers. Break up the loop condition to
test/security: fix IPv6 extension loop
The parenthesis were in the wrong place so that comparison took precedence over assignment in handling IPv6 extension headers. Break up the loop condition to avoid the problem.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 15ccc647526e ("test/security: test inline reassembly with multi-segment") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com>
show more ...
|
| f7f85632 | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/bonding: fix MAC address comparison
The first argument of 'memcmp' function was equal to the second argument. Therefore ASSERT would always be true.
Link: https://pvs-studio.com/en/blog/posts/
test/bonding: fix MAC address comparison
The first argument of 'memcmp' function was equal to the second argument. Therefore ASSERT would always be true.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 92073ef961ee ("bond: unit tests") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
| 112ce391 | 21-Nov-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test/bonding: fix loop on members
Do not use same variable for outer and inner loop in bonding test. Since the loop is just freeing the resulting burst use bulk free.
Link: https://pvs-studio.com/e
test/bonding: fix loop on members
Do not use same variable for outer and inner loop in bonding test. Since the loop is just freeing the resulting burst use bulk free.
Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 92073ef961ee ("bond: unit tests") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com>
show more ...
|
| be22019a | 13-Aug-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test: restore cfgfile tests
These tests were not built since the conversion to meson. Instead of using embedded resource functions, put data in include file and generate temporary file before the te
test: restore cfgfile tests
These tests were not built since the conversion to meson. Instead of using embedded resource functions, put data in include file and generate temporary file before the test.
The changes to app/test/meson.build are to handle auto-generated files (resources) differently. Don't scan these files to look for test input.
Using common unit test macro allows for simpler management of more tests.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
| 58bf7cb1 | 13-Aug-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test: rearrange config files tree
The input files don't need to be in a separate subdirectory.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richar
test: rearrange config files tree
The input files don't need to be in a separate subdirectory.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
| e3052c18 | 13-Aug-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
test: remove unused resource API
This API was used only for cfgfile tests and was never built after the conversion to meson. Will be replaced by simpler method of doing cfgfile tests.
Signed-off-by
test: remove unused resource API
This API was used only for cfgfile tests and was never built after the conversion to meson. Will be replaced by simpler method of doing cfgfile tests.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
| 0e95a677 | 30-Oct-2024 |
Chengwen Feng <fengchengwen@huawei.com> |
test/kvargs: add processing optional value
This commit adds rte_kvargs_process_opt() API's testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Huisong Li <lihuisong@huawei.co
test/kvargs: add processing optional value
This commit adds rte_kvargs_process_opt() API's testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
| 8b1656a9 | 30-Oct-2024 |
Chengwen Feng <fengchengwen@huawei.com> |
test/kvargs: extract parsing empty elements
Extract parse empty elements test as one stand-alone testcase. And also fix the kvlist was not released when the branch fails.
Signed-off-by: Chengwen Fe
test/kvargs: extract parsing empty elements
Extract parse empty elements test as one stand-alone testcase. And also fix the kvlist was not released when the branch fails.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
| c189450b | 30-Oct-2024 |
Chengwen Feng <fengchengwen@huawei.com> |
test/kvargs: extract list parsing
Extract parse list value test as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumb
test/kvargs: extract list parsing
Extract parse list value test as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
| a04d13aa | 30-Oct-2024 |
Chengwen Feng <fengchengwen@huawei.com> |
test/kvargs: extract parsing with keys
The test_valid_kvargs() function is too long to understand, extract the with keys tests as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengchengwe
test/kvargs: extract parsing with keys
The test_valid_kvargs() function is too long to understand, extract the with keys tests as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|
| 7dd71026 | 30-Oct-2024 |
Chengwen Feng <fengchengwen@huawei.com> |
test/kvargs: extract parsing without keys
The test_valid_kvargs() function is too long to understand, extract the without keys tests as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengc
test/kvargs: extract parsing without keys
The test_valid_kvargs() function is too long to understand, extract the without keys tests as one stand-alone testcase.
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Huisong Li <lihuisong@huawei.com>
show more ...
|