Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0
3
4SRC_TREE=../../../../
5
6test_run()
7{
8 sysctl -w net.core.bpf_jit_enable=$1 2>&1 > /dev/null
9 sysctl -w net.core.bpf_jit_harden=$2 2>&1 > /dev/null
10
11 echo "[ JIT enabled:$1 hardened:$2 ]"
12 dmesg -C
13 insmod $SRC_TREE/lib/test_bpf.ko 2> /dev/null
14 if [ $? -ne 0 ]; then
15 rc=1
16 fi
17 rmmod test_bpf 2> /dev/null
18 dmesg | grep FAIL
19}
20
21test_save()
22{
23 JE=`sysctl -n net.core.bpf_jit_enable`
24 JH=`sysctl -n net.core.bpf_jit_harden`
25}
26
27test_restore()
28{
29 sysctl -w net.core.bpf_jit_enable=$JE 2>&1 > /dev/null
30 sysctl -w net.core.bpf_jit_harden=$JH 2>&1 > /dev/null
31}
32
33rc=0
34test_save
35test_run 0 0
36test_run 1 0
37test_run 1 1
38test_run 1 2
39test_restore
40exit $rc