Message ID | 20220905072219.56361-1-ykaliuta@redhat.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | BPF |
Headers | show |
Series | [bpf-next] selftests: bpf: test_kmod.sh: pass parameter to the module | expand |
On Mon, Sep 5, 2022 at 12:25 AM Yauheni Kaliuta <ykaliuta@redhat.com> wrote: > > It's possible to specify particular tests for test_bpf.ko with > module parameters. Make it possible to pass a module parameter as > the first test_kmod.sh argument, example: > > test_kmod.sh test_range=1,3 > > Since magnitude tests take long time it can be reasonable to skip > them. > > Signed-off-by: Yauheni Kaliuta <ykaliuta@redhat.com> > --- > tools/testing/selftests/bpf/test_kmod.sh | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/tools/testing/selftests/bpf/test_kmod.sh b/tools/testing/selftests/bpf/test_kmod.sh > index 4f6444bcd53f..3cb52ba20db8 100755 > --- a/tools/testing/selftests/bpf/test_kmod.sh > +++ b/tools/testing/selftests/bpf/test_kmod.sh > @@ -4,6 +4,8 @@ > # Kselftest framework requirement - SKIP code is 4. > ksft_skip=4 > > +MOD_PARAM="$1" Shall we use $@ to pass all remaining arguments to insmod/modprobe? Otherwise, users may get confused when some parameters don't get passed. We should also add a help/usage message or at least a comment in the script. Thanks, Song > + > msg="skip all tests:" > if [ "$(id -u)" != "0" ]; then > echo $msg please run this as root >&2 > @@ -26,15 +28,15 @@ test_run() > echo "[ JIT enabled:$1 hardened:$2 ]" > dmesg -C > if [ -f ${OUTPUT}/lib/test_bpf.ko ]; then > - insmod ${OUTPUT}/lib/test_bpf.ko 2> /dev/null > + insmod ${OUTPUT}/lib/test_bpf.ko $MOD_PARAM 2> /dev/null > if [ $? -ne 0 ]; then > rc=1 > fi > else > # Use modprobe dry run to check for missing test_bpf module > - if ! /sbin/modprobe -q -n test_bpf; then > + if ! /sbin/modprobe -q -n test_bpf $MOD_PARAM; then > echo "test_bpf: [SKIP]" > - elif /sbin/modprobe -q test_bpf; then > + elif /sbin/modprobe -q test_bpf $MOD_PARAM; then > echo "test_bpf: ok" > else > echo "test_bpf: [FAIL]" > -- > 2.34.1 >
diff --git a/tools/testing/selftests/bpf/test_kmod.sh b/tools/testing/selftests/bpf/test_kmod.sh index 4f6444bcd53f..3cb52ba20db8 100755 --- a/tools/testing/selftests/bpf/test_kmod.sh +++ b/tools/testing/selftests/bpf/test_kmod.sh @@ -4,6 +4,8 @@ # Kselftest framework requirement - SKIP code is 4. ksft_skip=4 +MOD_PARAM="$1" + msg="skip all tests:" if [ "$(id -u)" != "0" ]; then echo $msg please run this as root >&2 @@ -26,15 +28,15 @@ test_run() echo "[ JIT enabled:$1 hardened:$2 ]" dmesg -C if [ -f ${OUTPUT}/lib/test_bpf.ko ]; then - insmod ${OUTPUT}/lib/test_bpf.ko 2> /dev/null + insmod ${OUTPUT}/lib/test_bpf.ko $MOD_PARAM 2> /dev/null if [ $? -ne 0 ]; then rc=1 fi else # Use modprobe dry run to check for missing test_bpf module - if ! /sbin/modprobe -q -n test_bpf; then + if ! /sbin/modprobe -q -n test_bpf $MOD_PARAM; then echo "test_bpf: [SKIP]" - elif /sbin/modprobe -q test_bpf; then + elif /sbin/modprobe -q test_bpf $MOD_PARAM; then echo "test_bpf: ok" else echo "test_bpf: [FAIL]"
It's possible to specify particular tests for test_bpf.ko with module parameters. Make it possible to pass a module parameter as the first test_kmod.sh argument, example: test_kmod.sh test_range=1,3 Since magnitude tests take long time it can be reasonable to skip them. Signed-off-by: Yauheni Kaliuta <ykaliuta@redhat.com> --- tools/testing/selftests/bpf/test_kmod.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)