]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: netconsole: selftests: Check if netdevsim is available
authorBreno Leitao <leitao@debian.org>
Fri, 8 Nov 2024 14:59:25 +0000 (06:59 -0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 12 Nov 2024 03:05:48 +0000 (19:05 -0800)
The netconsole selftest relies on the availability of the netdevsim module.
To ensure the test can run correctly, we need to check if the netdevsim
module is either loaded or built-in before proceeding.

Update the netconsole selftest to check for the existence of
the /sys/bus/netdevsim/new_device file before running the test. If the
file is not found, the test is skipped with an explanation that the
CONFIG_NETDEVSIM kernel config option may not be enabled.

Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20241108-netcon_selftest_deps-v1-1-1789cbf3adcd@debian.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/drivers/net/netcons_basic.sh

index 182eb1a97e59f3b4c9eea0e5b9e64a7fff656e2b..b175f4d966e5056ddb62e335f212c03e55f50fb0 100755 (executable)
@@ -39,6 +39,7 @@ NAMESPACE=""
 # IDs for netdevsim
 NSIM_DEV_1_ID=$((256 + RANDOM % 256))
 NSIM_DEV_2_ID=$((512 + RANDOM % 256))
+NSIM_DEV_SYS_NEW="/sys/bus/netdevsim/new_device"
 
 # Used to create and delete namespaces
 source "${SCRIPTDIR}"/../../net/lib.sh
@@ -46,7 +47,6 @@ source "${SCRIPTDIR}"/../../net/net_helper.sh
 
 # Create netdevsim interfaces
 create_ifaces() {
-       local NSIM_DEV_SYS_NEW=/sys/bus/netdevsim/new_device
 
        echo "$NSIM_DEV_2_ID" > "$NSIM_DEV_SYS_NEW"
        echo "$NSIM_DEV_1_ID" > "$NSIM_DEV_SYS_NEW"
@@ -212,6 +212,11 @@ function check_for_dependencies() {
                exit "${ksft_skip}"
        fi
 
+       if [ ! -f "${NSIM_DEV_SYS_NEW}" ]; then
+               echo "SKIP: file ${NSIM_DEV_SYS_NEW} does not exist. Check if CONFIG_NETDEVSIM is enabled" >&2
+               exit "${ksft_skip}"
+       fi
+
        if [ ! -d "${NETCONS_CONFIGFS}" ]; then
                echo "SKIP: directory ${NETCONS_CONFIGFS} does not exist. Check if NETCONSOLE_DYNAMIC is enabled" >&2
                exit "${ksft_skip}"