Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

netconsole: selftests: Move netconsole selftests to separate target

This patch moves netconsole selftests from drivers/net to its own target
in drivers/net/netconsole.

This change helps saving some resources from CI since tests in
drivers/net automatically run against real hardware which are not used
by netconsole tests as they rely solely on netdevsim.

lib_netcons.sh is kept under drivers/net/lib since it is also used by
bonding selftests. Finally, drivers/net config remains unchanged as
netpoll_basic.py requires netconsole (and does leverage real HW testing).

Reviewed-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Andre Carvalho <asantostc@gmail.com>
Link: https://patch.msgid.link/20260127-netcons-selftest-target-v2-1-f509ab65b3bc@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Andre Carvalho and committed by
Jakub Kicinski
b3827c91 a010fe8d

+34 -15
+1 -1
MAINTAINERS
··· 18021 18021 F: Documentation/networking/netconsole.rst 18022 18022 F: drivers/net/netconsole.c 18023 18023 F: tools/testing/selftests/drivers/net/lib/sh/lib_netcons.sh 18024 - F: tools/testing/selftests/drivers/net/netcons\* 18024 + F: tools/testing/selftests/drivers/net/netconsole/ 18025 18025 18026 18026 NETDEVSIM 18027 18027 M: Jakub Kicinski <kuba@kernel.org>
+1
tools/testing/selftests/Makefile
··· 22 22 TARGETS += drivers/s390x/uvdevice 23 23 TARGETS += drivers/net 24 24 TARGETS += drivers/net/bonding 25 + TARGETS += drivers/net/netconsole 25 26 TARGETS += drivers/net/team 26 27 TARGETS += drivers/net/virtio_net 27 28 TARGETS += drivers/platform/x86/intel/ifs
-7
tools/testing/selftests/drivers/net/Makefile
··· 15 15 hds.py \ 16 16 napi_id.py \ 17 17 napi_threaded.py \ 18 - netcons_basic.sh \ 19 - netcons_cmdline.sh \ 20 - netcons_fragmented_msg.sh \ 21 - netcons_overflow.sh \ 22 - netcons_resume.sh \ 23 - netcons_sysdata.sh \ 24 - netcons_torture.sh \ 25 18 netpoll_basic.py \ 26 19 ping.py \ 27 20 psp.py \
+1 -1
tools/testing/selftests/drivers/net/netcons_basic.sh tools/testing/selftests/drivers/net/netconsole/netcons_basic.sh
··· 18 18 19 19 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 20 20 21 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 21 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 22 22 23 23 modprobe netdevsim 2> /dev/null || true 24 24 modprobe netconsole 2> /dev/null || true
+1 -1
tools/testing/selftests/drivers/net/netcons_cmdline.sh tools/testing/selftests/drivers/net/netconsole/netcons_cmdline.sh
··· 12 12 13 13 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 14 14 15 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 15 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 16 16 17 17 check_netconsole_module 18 18
+1 -1
tools/testing/selftests/drivers/net/netcons_fragmented_msg.sh tools/testing/selftests/drivers/net/netconsole/netcons_fragmented_msg.sh
··· 16 16 17 17 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 18 18 19 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 19 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 20 20 21 21 modprobe netdevsim 2> /dev/null || true 22 22 modprobe netconsole 2> /dev/null || true
+1 -1
tools/testing/selftests/drivers/net/netcons_overflow.sh tools/testing/selftests/drivers/net/netconsole/netcons_overflow.sh
··· 13 13 14 14 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 15 15 16 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 16 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 17 17 # This is coming from netconsole code. Check for it in drivers/net/netconsole.c 18 18 MAX_USERDATA_ITEMS=256 19 19
+1 -1
tools/testing/selftests/drivers/net/netcons_resume.sh tools/testing/selftests/drivers/net/netconsole/netcons_resume.sh
··· 20 20 21 21 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 22 22 23 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 23 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 24 24 25 25 SAVED_SRCMAC="" # to be populated later 26 26 SAVED_DSTMAC="" # to be populated later
+1 -1
tools/testing/selftests/drivers/net/netcons_sysdata.sh tools/testing/selftests/drivers/net/netconsole/netcons_sysdata.sh
··· 18 18 19 19 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 20 20 21 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 21 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 22 22 23 23 # Enable the sysdata cpu_nr feature 24 24 function set_cpu_nr() {
+1 -1
tools/testing/selftests/drivers/net/netcons_torture.sh tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
··· 17 17 18 18 SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")") 19 19 20 - source "${SCRIPTDIR}"/lib/sh/lib_netcons.sh 20 + source "${SCRIPTDIR}"/../lib/sh/lib_netcons.sh 21 21 22 22 # Number of times the main loop run 23 23 ITERATIONS=${1:-150}
+19
tools/testing/selftests/drivers/net/netconsole/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + TEST_INCLUDES := \ 4 + ../../../net/lib.sh \ 5 + ../lib/sh/lib_netcons.sh \ 6 + # end of TEST_INCLUDES 7 + 8 + TEST_PROGS := \ 9 + netcons_basic.sh \ 10 + netcons_cmdline.sh \ 11 + netcons_fragmented_msg.sh \ 12 + netcons_overflow.sh \ 13 + netcons_resume.sh \ 14 + netcons_sysdata.sh \ 15 + netcons_torture.sh \ 16 + # end of TEST_PROGS 17 + 18 + include ../../../lib.mk 19 +
+6
tools/testing/selftests/drivers/net/netconsole/config
··· 1 + CONFIG_CONFIGFS_FS=y 2 + CONFIG_IPV6=y 3 + CONFIG_NETCONSOLE=m 4 + CONFIG_NETCONSOLE_DYNAMIC=y 5 + CONFIG_NETCONSOLE_EXTENDED_LOG=y 6 + CONFIG_NETDEVSIM=m