summaryrefslogtreecommitdiffstats
path: root/lib/test_bpf.c
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2015-07-30 12:42:46 +0200
committerDavid S. Miller <davem@davemloft.net>2015-07-30 11:13:20 -0700
commit4962fa10f30d7b563f38467feeae10314b166c77 (patch)
treef813e5296c805668bb463f7db4075343307d406f /lib/test_bpf.c
parentce7fa78ce16e476a610e165dd0e8c1e85a75d60f (diff)
downloadlinux-stable-4962fa10f30d7b563f38467feeae10314b166c77.tar.gz
linux-stable-4962fa10f30d7b563f38467feeae10314b166c77.tar.bz2
linux-stable-4962fa10f30d7b563f38467feeae10314b166c77.zip
test_bpf: assign type to native eBPF test cases
As JITs start to perform optimizations whether to clear A and X on eBPF programs in the prologue, we should actually assign a program type to the native eBPF test cases. It doesn't really matter which program type, as these instructions don't go through the verifier, but it needs to be a type != BPF_PROG_TYPE_UNSPEC. This reflects eBPF programs loaded via bpf(2) system call (!= type unspec) vs. classic BPF to eBPF migrations (== type unspec). Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Cc: Michael Holzheu <holzheu@linux.vnet.ibm.com> Acked-by: Alexei Starovoitov <ast@plumgrid.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/test_bpf.c')
-rw-r--r--lib/test_bpf.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/test_bpf.c b/lib/test_bpf.c
index 8b5e66f008b0..3afddf2026c9 100644
--- a/lib/test_bpf.c
+++ b/lib/test_bpf.c
@@ -4613,6 +4613,8 @@ static struct bpf_prog *generate_filter(int which, int *err)
}
fp->len = flen;
+ /* Type doesn't really matter here as long as it's not unspec. */
+ fp->type = BPF_PROG_TYPE_SOCKET_FILTER;
memcpy(fp->insnsi, fptr, fp->len * sizeof(struct bpf_insn));
bpf_prog_select_runtime(fp);