selftests/xsk: add debug option for creating netdevs
Add a new option to the test_xsk.sh script that only creates the two veth netdevs and the extra namespace, then exits without running any tests. The failed test can then be executed in the debugger without having to create the netdevs and namespace manually. For ease-of-use, the veth netdevs to use are printed so they can be copied into the debugger. Here is an example how to use it: > sudo ./test_xsk.sh -d veth10 veth11 > gdb xskxceiver In gdb: run -i veth10 -i veth11 And now the test cases can be debugged with gdb. If you want to debug the test suite on a real NIC in loopback mode, there is no need to use this feature as you already know the netdev of your NIC. Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com> Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com> Link: https://lore.kernel.org/r/20230111093526.11682-7-magnus.karlsson@gmail.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
a4ca62277b
commit
703bfd3710
|
@ -74,6 +74,9 @@
|
|||
# Run and dump packet contents:
|
||||
# sudo ./test_xsk.sh -D
|
||||
#
|
||||
# Set up veth interfaces and leave them up so xskxceiver can be launched in a debugger:
|
||||
# sudo ./test_xsk.sh -d
|
||||
#
|
||||
# Run test suite for physical device in loopback mode
|
||||
# sudo ./test_xsk.sh -i IFACE
|
||||
|
||||
|
@ -81,11 +84,12 @@
|
|||
|
||||
ETH=""
|
||||
|
||||
while getopts "vDi:" flag
|
||||
while getopts "vDi:d" flag
|
||||
do
|
||||
case "${flag}" in
|
||||
v) verbose=1;;
|
||||
D) dump_pkts=1;;
|
||||
d) debug=1;;
|
||||
i) ETH=${OPTARG};;
|
||||
esac
|
||||
done
|
||||
|
@ -174,6 +178,11 @@ statusList=()
|
|||
|
||||
TEST_NAME="XSK_SELFTESTS_${VETH0}_SOFTIRQ"
|
||||
|
||||
if [[ $debug -eq 1 ]]; then
|
||||
echo "-i" ${VETH0} "-i" ${VETH1},${NS1}
|
||||
exit
|
||||
fi
|
||||
|
||||
exec_xskxceiver
|
||||
|
||||
if [ -z $ETH ]; then
|
||||
|
|
Loading…
Reference in New Issue