forked from Minki/linux
81e167c2a2
The test_kmod.sh script require root privilege for the successful execution of the test. This patch is to notify the user about the privilege the script demands for the successful execution of the test. Signed-off-by: Jeffrin Jose T (Rajagiri SET) <ahiliation@gmail.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
62 lines
1.1 KiB
Bash
Executable File
62 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
# Kselftest framework requirement - SKIP code is 4.
|
|
ksft_skip=4
|
|
|
|
msg="skip all tests:"
|
|
if [ "$(id -u)" != "0" ]; then
|
|
echo $msg please run this as root >&2
|
|
exit $ksft_skip
|
|
fi
|
|
|
|
SRC_TREE=../../../../
|
|
|
|
test_run()
|
|
{
|
|
sysctl -w net.core.bpf_jit_enable=$1 2>&1 > /dev/null
|
|
sysctl -w net.core.bpf_jit_harden=$2 2>&1 > /dev/null
|
|
|
|
echo "[ JIT enabled:$1 hardened:$2 ]"
|
|
dmesg -C
|
|
if [ -f ${SRC_TREE}/lib/test_bpf.ko ]; then
|
|
insmod ${SRC_TREE}/lib/test_bpf.ko 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
|
|
echo "test_bpf: [SKIP]"
|
|
elif /sbin/modprobe -q test_bpf; then
|
|
echo "test_bpf: ok"
|
|
else
|
|
echo "test_bpf: [FAIL]"
|
|
rc=1
|
|
fi
|
|
fi
|
|
rmmod test_bpf 2> /dev/null
|
|
dmesg | grep FAIL
|
|
}
|
|
|
|
test_save()
|
|
{
|
|
JE=`sysctl -n net.core.bpf_jit_enable`
|
|
JH=`sysctl -n net.core.bpf_jit_harden`
|
|
}
|
|
|
|
test_restore()
|
|
{
|
|
sysctl -w net.core.bpf_jit_enable=$JE 2>&1 > /dev/null
|
|
sysctl -w net.core.bpf_jit_harden=$JH 2>&1 > /dev/null
|
|
}
|
|
|
|
rc=0
|
|
test_save
|
|
test_run 0 0
|
|
test_run 1 0
|
|
test_run 1 1
|
|
test_run 1 2
|
|
test_restore
|
|
exit $rc
|