| 36edf3cc | 20-Jul-2021 |
Rakesh Kudurumalla <[email protected]> |
test: avoid hang if queues are full and Tx fails
Current pmd_perf_autotest() in continuous mode tries to enqueue MAX_TRAFFIC_BURST completely before starting the test. Some drivers cannot accept com
test: avoid hang if queues are full and Tx fails
Current pmd_perf_autotest() in continuous mode tries to enqueue MAX_TRAFFIC_BURST completely before starting the test. Some drivers cannot accept complete MAX_TRAFFIC_BURST even though rx+tx desc count can fit it. This patch changes behaviour to stop enqueuing after few retries.
Fixes: 002ade70e933 ("app/test: measure cycles per packet in Rx/Tx") Cc: [email protected]
Signed-off-by: Rakesh Kudurumalla <[email protected]>
show more ...
|
| 981a0257 | 11-May-2022 |
Stanislaw Kardach <[email protected]> |
test/ring: remove excessive inlining
Forcing inlining in test_ring_enqueue and test_ring_dequeue can cause the compiled code to grow extensively when compiled with no optimization (-O0 or -Og). This
test/ring: remove excessive inlining
Forcing inlining in test_ring_enqueue and test_ring_dequeue can cause the compiled code to grow extensively when compiled with no optimization (-O0 or -Og). This is default in the meson's debug configuration. This can collide with compiler bugs and cause issues during linking of unit tests where the api_type or esize are non-const variables causing inlining cascade. In perf tests this is not the case in perf-tests as esize and api_type are const values.
One such case was discovered when porting DPDK to RISC-V. GCC 11.2 (and no fix still in 12.1) is generating a short relative jump instruction (J <offset>) for goto and for loops. When loop body grows extensively in ring test, the target offset goes beyond supported offfset of +/- 1MB from PC. This is an obvious bug in the GCC as RISC-V has a two-instruction construct to jump to any absolute address (AUIPC+JALR).
However there is no reason to force inlining as the test code works perfectly fine without it.
GCC has a bug report for a similar case (with conditionals): https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93062
Fixes: a9fe152363e2 ("test/ring: add custom element size functional tests")
Signed-off-by: Stanislaw Kardach <[email protected]> Acked-by: Bruce Richardson <[email protected]> Reviewed-by: Honnappa Nagarahalli <[email protected]> Acked-by: Konstantin Ananyev <[email protected]>
show more ...
|
| 04e53de9 | 12-May-2022 |
Tyler Retzlaff <[email protected]> |
test/threads: add unit test
Establish unit test for testing thread api. Initial unit tests for rte_thread_{get,set}_affinity_by_id().
Signed-off-by: Narcisa Vasile <[email protected]> Si
test/threads: add unit test
Establish unit test for testing thread api. Initial unit tests for rte_thread_{get,set}_affinity_by_id().
Signed-off-by: Narcisa Vasile <[email protected]> Signed-off-by: Tyler Retzlaff <[email protected]>
show more ...
|
| deb450c4 | 16-May-2022 |
Shijith Thotton <[email protected]> |
test/event: set queue attributes at runtime
Added test cases to test changing of queue QoS attributes priority, weight and affinity at runtime.
Signed-off-by: Shijith Thotton <[email protected]>
test/event: set queue attributes at runtime
Added test cases to test changing of queue QoS attributes priority, weight and affinity at runtime.
Signed-off-by: Shijith Thotton <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| 7da008df | 13-May-2022 |
Pavan Nikhilesh <[email protected]> |
app/eventdev: use port quiescing
Quiesce event ports used by the workers core on exit to free up any outstanding resources.
Signed-off-by: Pavan Nikhilesh <[email protected]> Acked-by: Jerin
app/eventdev: use port quiescing
Quiesce event ports used by the workers core on exit to free up any outstanding resources.
Signed-off-by: Pavan Nikhilesh <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| f0b68c0b | 13-May-2022 |
Pavan Nikhilesh <[email protected]> |
app/eventdev: clean up worker state before exit
Event ports are configured to implicitly release the scheduler contexts currently held in the next call to rte_event_dequeue_burst(). A worker core mi
app/eventdev: clean up worker state before exit
Event ports are configured to implicitly release the scheduler contexts currently held in the next call to rte_event_dequeue_burst(). A worker core might still hold a scheduling context during exit, as the next call to rte_event_dequeue_burst() is never made. This might lead to deadlock based on the worker exit timing and when there are very less number of flows.
Add clean up function to release any scheduling contexts held by the worker by using RTE_EVENT_OP_RELEASE.
Signed-off-by: Pavan Nikhilesh <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| a734e738 | 13-May-2022 |
Pavan Nikhilesh <[email protected]> |
app/eventdev: simplify signal handling and teardown
Remove rte_*_dev calls from signal handler callback as signal handlers are supposed to be light weight.
Split ethdev teardown into Rx and Tx sect
app/eventdev: simplify signal handling and teardown
Remove rte_*_dev calls from signal handler callback as signal handlers are supposed to be light weight.
Split ethdev teardown into Rx and Tx sections, wait for workers to finish processing after disabling Rx to allow workers to complete processing currently held packets.
Verified SW event device on ARM64 using the following command:
./build/app/dpdk-test-eventdev -l 7-23 -s 0xf00 --vdev=event_sw0 -a 0002:02:00.0 -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=o --wlcores 16-23
Signed-off-by: Pavan Nikhilesh <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| f0b3966a | 06-Apr-2022 |
Huisong Li <[email protected]> |
app/testpmd: fix MTU verification
The macro RTE_ETHER_MIN_LEN isn't the minimum value of MTU. But testpmd used it when execute 'port config mtu 0 xx' cmd. This patch fixes it.
Fixes: 1bb4a528c41f (
app/testpmd: fix MTU verification
The macro RTE_ETHER_MIN_LEN isn't the minimum value of MTU. But testpmd used it when execute 'port config mtu 0 xx' cmd. This patch fixes it.
Fixes: 1bb4a528c41f ("ethdev: fix max Rx packet length") Cc: [email protected]
Signed-off-by: Huisong Li <[email protected]> Signed-off-by: Min Hu (Connor) <[email protected]> Acked-by: Ferruh Yigit <[email protected]>
show more ...
|
| baef6bbf | 06-Apr-2022 |
Min Hu (Connor) <[email protected]> |
app/testpmd: check statistics query before printing
In function 'fwd_stats_display', if function 'rte_eth_stats_get' fails, 'stats' is uncertainty value. The display result will be abnormal.
This p
app/testpmd: check statistics query before printing
In function 'fwd_stats_display', if function 'rte_eth_stats_get' fails, 'stats' is uncertainty value. The display result will be abnormal.
This patch check the return value of 'rte_eth_stats_get' to avoid display abnormal stats.
Fixes: 53324971a14e ("app/testpmd: display/clear forwarding stats on demand") Cc: [email protected]
Signed-off-by: Min Hu (Connor) <[email protected]> Acked-by: Aman Singh <[email protected]>
show more ...
|
| c0c305ee | 05-May-2022 |
David Marchand <[email protected]> |
ci: build some job with ASan
Enable ASan, this can greatly help identify leaks and buffer overflows. Running unit tests relying on multiprocess is unreliable with ASan enabled, so skip them.
Signed
ci: build some job with ASan
Enable ASan, this can greatly help identify leaks and buffer overflows. Running unit tests relying on multiprocess is unreliable with ASan enabled, so skip them.
Signed-off-by: David Marchand <[email protected]> Acked-by: Aaron Conole <[email protected]>
show more ...
|
| 48ff13ef | 05-May-2022 |
David Marchand <[email protected]> |
test/mem: disable ASan when accessing unallocated memory
As described in bugzilla, ASan reports accesses to all memory segment as invalid, since those parts have not been allocated with rte_malloc.
test/mem: disable ASan when accessing unallocated memory
As described in bugzilla, ASan reports accesses to all memory segment as invalid, since those parts have not been allocated with rte_malloc. Move __rte_no_asan to rte_common.h and disable ASan on a part of the test.
Bugzilla ID: 880 Fixes: 6cc51b1293ce ("mem: instrument allocator for ASan") Cc: [email protected]
Signed-off-by: David Marchand <[email protected]> Acked-by: Anatoly Burakov <[email protected]>
show more ...
|
| af0892af | 10-May-2022 |
Stanislaw Kardach <[email protected]> |
test/hash: report non HTM numbers for single thread
In hash_readwrite_perf_autotest a single read and write operation is benchmarked for both HTM and non HTM cases. However the result summary only s
test/hash: report non HTM numbers for single thread
In hash_readwrite_perf_autotest a single read and write operation is benchmarked for both HTM and non HTM cases. However the result summary only shows the HTM value. Therefore add the non HTM value for completeness.
Fixes: 0eb3726ebcf1 ("test/hash: add test for read/write concurrency")
Signed-off-by: Stanislaw Kardach <[email protected]> Acked-by: Yipeng Wang <[email protected]>
show more ...
|
| e689abaf | 08-Apr-2022 |
Archana Muniganti <[email protected]> |
test/crypto-perf: add vector file for AES-GCM
Added test vector file for AES-128-GCM for 64B and 512B length buffers.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <
test/crypto-perf: add vector file for AES-GCM
Added test vector file for AES-128-GCM for 64B and 512B length buffers.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <[email protected]>
show more ...
|
| 14864c42 | 08-Apr-2022 |
Archana Muniganti <[email protected]> |
test/crypto-perf: populate mbuf in latency test
For decrypt, ICV mismatch can come as data is dummy and latency will be calculated for error path. Hence populate mbuf with test vector data.
Signed-
test/crypto-perf: populate mbuf in latency test
For decrypt, ICV mismatch can come as data is dummy and latency will be calculated for error path. Hence populate mbuf with test vector data.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <[email protected]>
show more ...
|
| a538d1d2 | 29-Apr-2022 |
Kiran Kumar K <[email protected]> |
test/crypto-perf: extend asymmetric crypto throughput test
Extended support for asymmetric crypto perf throughput test. Added support for new modulus lengths. Added new parameter --modex-len. Suppor
test/crypto-perf: extend asymmetric crypto throughput test
Extended support for asymmetric crypto perf throughput test. Added support for new modulus lengths. Added new parameter --modex-len. Supported lengths are 60, 128, 255, 448. Default length is 128.
Signed-off-by: Kiran Kumar K <[email protected]> Acked-by: Akhil Goyal <[email protected]>
show more ...
|
| 0e4cc244 | 08-Apr-2022 |
Archana Muniganti <[email protected]> |
test/crypto: add AH AES-GMAC test vectors
Added AES_GMAC test vectors along with combined mode support.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <gakhil@marvell
test/crypto: add AH AES-GMAC test vectors
Added AES_GMAC test vectors along with combined mode support.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <[email protected]>
show more ...
|
| 77f46cda | 08-Apr-2022 |
Archana Muniganti <[email protected]> |
test/crypto: add AH test vectors
Added tunnel and transport AH known test vectors for SHA256 HMAC.
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <[email protected]> |
| 663d78be | 08-Apr-2022 |
Archana Muniganti <[email protected]> |
test/crypto: add AH under combined mode
Added auth only and null cipher + auth under combined mode for following combinations. 1. Tunnel IPv4 2. Transport IPv4
Signed-off-by: Archana Muniganti <mar
test/crypto: add AH under combined mode
Added auth only and null cipher + auth under combined mode for following combinations. 1. Tunnel IPv4 2. Transport IPv4
Signed-off-by: Archana Muniganti <[email protected]> Acked-by: Akhil Goyal <[email protected]>
show more ...
|
| a6699a6e | 21-Apr-2022 |
Vladimir Medvedkin <[email protected]> |
test/table: fix buffer overflow on lpm entry
This patch fixes stack buffer overflow reported by ASan.
Bugzilla ID: 820 Fixes: 5205954791cb ("app/test: packet framework unit tests") Cc: stable@dpdk.
test/table: fix buffer overflow on lpm entry
This patch fixes stack buffer overflow reported by ASan.
Bugzilla ID: 820 Fixes: 5205954791cb ("app/test: packet framework unit tests") Cc: [email protected]
Signed-off-by: Vladimir Medvedkin <[email protected]> Acked-by: Cristian Dumitrescu <[email protected]>
show more ...
|
| 55ae8965 | 22-Mar-2022 |
Tyler Retzlaff <[email protected]> |
test/bpf: skip test if libpcap is unavailable
test_bpf_convert is being conditionally registered depending on the presence of RTE_HAS_LIBPCAP except the UT unconditionally lists it as a test to run.
test/bpf: skip test if libpcap is unavailable
test_bpf_convert is being conditionally registered depending on the presence of RTE_HAS_LIBPCAP except the UT unconditionally lists it as a test to run.
When the UT runs test_bpf_convert test-dpdk can't find the registration and assumes the DPDK_TEST environment variable hasn't been defined resulting in test-dpdk dropping to interactive mode and subsequently waiting for the remainder of the UT fast-test timeout period before reporting the test as having timed out.
* unconditionally register test_bpf_convert, * if ! RTE_HAS_LIBPCAP provide a stub test_bpf_convert that reports the test is skipped similar to that done with the test_bpf test.
Fixes: 2eccf6afbea9 ("bpf: add function to convert classic BPF to DPDK BPF") Cc: [email protected]
Signed-off-by: Tyler Retzlaff <[email protected]> Acked-by: Stephen Hemminger <[email protected]> Acked-by: Konstantin Ananyev <[email protected]>
show more ...
|
| fc547a92 | 10-Mar-2022 |
Gregory Etelson <[email protected]> |
app/testpmd: fix flow rule with flex input link
Testpmd reads flex item configuration from a JSON file. Flex item input link description is stored in testpmd flow item format. For example, `eth type
app/testpmd: fix flow rule with flex input link
Testpmd reads flex item configuration from a JSON file. Flex item input link description is stored in testpmd flow item format. For example, `eth type is 0x0800`. The item description is placed into a general testpmd CLI flow rule command template and parsed to convert string into flow item object.
The patch adds the `actions` section to the flow rule template.
Fixes: 59f3a8acbcdb ("app/testpmd: add flex item commands") Cc: [email protected]
Signed-off-by: Gregory Etelson <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| a058de21 | 13-Mar-2022 |
Gregory Etelson <[email protected]> |
app/testpmd: fix GTP header parsing in checksum engine
GTP header can be followed by an optional 32 bits extension. GTP notifies about the extension presence through the E, S or PN header bits.
Csu
app/testpmd: fix GTP header parsing in checksum engine
GTP header can be followed by an optional 32 bits extension. GTP notifies about the extension presence through the E, S or PN header bits.
Csum GTP header parser did not check the extension bits value.
The patch updates GTP header length if at-least one of the extension bits is set.
Fixes: d8e5e69f3a9b ("app/testpmd: add GTP parsing and Tx checksum offload") Cc: [email protected]
Signed-off-by: Gregory Etelson <[email protected]> Acked-by: Aman Singh <[email protected]>
show more ...
|
| 5aae2723 | 13-Mar-2022 |
Adham Masarwah <[email protected]> |
app/testpmd: fix show RSS RETA on Windows
Replaced using strtoul with strtoull when converting to 64-bit mask field. In Windows strtoul returns 32-bit values which cause an issue with show RSS RETA.
app/testpmd: fix show RSS RETA on Windows
Replaced using strtoul with strtoull when converting to 64-bit mask field. In Windows strtoul returns 32-bit values which cause an issue with show RSS RETA.
Fixes: 66c594904ac ("ethdev: support multiple sizes of redirection table") Cc: [email protected]
Signed-off-by: Adham Masarwah <[email protected]> Acked-by: Aman Singh <[email protected]>
show more ...
|
| 7dc92d17 | 29-Dec-2021 |
Kevin Liu <[email protected]> |
app/testpmd: fix L4 checksum in multi-segments
Testpmd forwards packets in checksum mode that it needs to calculate the checksum of each layer's protocol.
In process_inner_cksums, when parsing tunn
app/testpmd: fix L4 checksum in multi-segments
Testpmd forwards packets in checksum mode that it needs to calculate the checksum of each layer's protocol.
In process_inner_cksums, when parsing tunnel packets, inner L4 offset should be outer_l2_len + outer_l3_len + l2_len + l3_len.
In process_outer_cksums, when parsing tunnel packets, outer L4 offset should be outer_l2_len + outer_l3_len.
Fixes: e6b9d6411e91 ("app/testpmd: add SW L4 checksum in multi-segments") Cc: [email protected]
Signed-off-by: Kevin Liu <[email protected]> Acked-by: Yuying Zhang <[email protected]> Acked-by: Aman Singh <[email protected]>
show more ...
|
| c1d1b94e | 09-Mar-2022 |
Gerry Gribbon <[email protected]> |
app/regex: fix number of matches
Depending on number of jobs specified on command line, part of the data buffer may not get searched, resulting in incorrect number of matches being reported.
Additi
app/regex: fix number of matches
Depending on number of jobs specified on command line, part of the data buffer may not get searched, resulting in incorrect number of matches being reported.
Additional change to ensure the "All Matches" summary outputs the correct match start locations in the supplied data buffer.
Fixes: de06137cb295 ("app/regex: add RegEx test application") Cc: [email protected]
Signed-off-by: Gerry Gribbon <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|