]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches
authorThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Tue, 20 Mar 2018 12:58:51 +0000 (09:58 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Thu, 29 Mar 2018 10:32:56 +0000 (07:32 -0300)
BugLink: http://bugs.launchpad.net/bugs/1756150
Function bpf_fill_maxinsns11 is designed to not be able to be JITed on
x86_64. So, it fails when CONFIG_BPF_JIT_ALWAYS_ON=y, and
commit 09584b406742 ("bpf: fix selftests/bpf test_kmod.sh failure when
CONFIG_BPF_JIT_ALWAYS_ON=y") makes sure that failure is detected on that
case.

However, it does not fail on other architectures, which have a different
JIT compiler design. So, test_bpf has started to fail to load on those.

After this fix, test_bpf loads fine on both x86_64 and ppc64el.

Fixes: 09584b406742 ("bpf: fix selftests/bpf test_kmod.sh failure when CONFIG_BPF_JIT_ALWAYS_ON=y")
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Reviewed-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
(cherry picked from commit 52fda36d63bfc8c8e8ae5eda8eb5ac6f52cd67ed)
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
lib/test_bpf.c

index 8076e693f86e4011b9f7aec8cfd5a0dd98004f73..59359aad645db1d6703bc4f410532956bfa051e7 100644 (file)
@@ -5462,7 +5462,7 @@ static struct bpf_test tests[] = {
        {
                "BPF_MAXINSNS: Jump, gap, jump, ...",
                { },
-#ifdef CONFIG_BPF_JIT_ALWAYS_ON
+#if defined(CONFIG_BPF_JIT_ALWAYS_ON) && defined(CONFIG_X86)
                CLASSIC | FLAG_NO_DATA | FLAG_EXPECTED_FAIL,
 #else
                CLASSIC | FLAG_NO_DATA,