Message ID | 20191213015606.23058-1-skhan@linuxfoundation.org (mailing list archive) |
---|---|
State | Mainlined |
Commit | c65e41538b04e0d64a673828745a00cb68a24371 |
Headers | show |
Series | selftests: firmware: Fix it to do root uid check and skip | expand |
On Thu, Dec 12, 2019 at 06:56:06PM -0700, Shuah Khan wrote: > firmware attempts to load test modules that require root access > and fail. Fix it to check for root uid and exit with skip code > instead. > > Before this fix: > > selftests: firmware: fw_run_tests.sh > modprobe: ERROR: could not insert 'test_firmware': Operation not permitted > You must have the following enabled in your kernel: > CONFIG_TEST_FIRMWARE=y > CONFIG_FW_LOADER=y > CONFIG_FW_LOADER_USER_HELPER=y > CONFIG_IKCONFIG=y > CONFIG_IKCONFIG_PROC=y > not ok 1 selftests: firmware: fw_run_tests.sh # SKIP > > With this fix: > > selftests: firmware: fw_run_tests.sh > skip all tests: must be run as root > not ok 1 selftests: firmware: fw_run_tests.sh # SKIP > > Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> > --- > tools/testing/selftests/firmware/fw_lib.sh | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/tools/testing/selftests/firmware/fw_lib.sh b/tools/testing/selftests/firmware/fw_lib.sh > index b879305a766d..5b8c0fedee76 100755 > --- a/tools/testing/selftests/firmware/fw_lib.sh > +++ b/tools/testing/selftests/firmware/fw_lib.sh > @@ -34,6 +34,12 @@ test_modprobe() > > check_mods() > { > + local uid=$(id -u) > + if [ $uid -ne 0 ]; then > + echo "skip all tests: must be run as root" >&2 > + exit $ksft_skip > + fi > + > trap "test_modprobe" EXIT > if [ ! -d $DIR ]; then > modprobe test_firmware > -- > 2.20.1 > Reviwed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/tools/testing/selftests/firmware/fw_lib.sh b/tools/testing/selftests/firmware/fw_lib.sh index b879305a766d..5b8c0fedee76 100755 --- a/tools/testing/selftests/firmware/fw_lib.sh +++ b/tools/testing/selftests/firmware/fw_lib.sh @@ -34,6 +34,12 @@ test_modprobe() check_mods() { + local uid=$(id -u) + if [ $uid -ne 0 ]; then + echo "skip all tests: must be run as root" >&2 + exit $ksft_skip + fi + trap "test_modprobe" EXIT if [ ! -d $DIR ]; then modprobe test_firmware
firmware attempts to load test modules that require root access and fail. Fix it to check for root uid and exit with skip code instead. Before this fix: selftests: firmware: fw_run_tests.sh modprobe: ERROR: could not insert 'test_firmware': Operation not permitted You must have the following enabled in your kernel: CONFIG_TEST_FIRMWARE=y CONFIG_FW_LOADER=y CONFIG_FW_LOADER_USER_HELPER=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y not ok 1 selftests: firmware: fw_run_tests.sh # SKIP With this fix: selftests: firmware: fw_run_tests.sh skip all tests: must be run as root not ok 1 selftests: firmware: fw_run_tests.sh # SKIP Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> --- tools/testing/selftests/firmware/fw_lib.sh | 6 ++++++ 1 file changed, 6 insertions(+)