Commit 92624782 authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller

bpf: enforce correct alignment for instructions

After commit 9facc336 ("bpf: reject any prog that failed read-only lock")
offsetof(struct bpf_binary_header, image) became 3 instead of 4,
breaking powerpc BPF badly, since instructions need to be word aligned.

Fixes: 9facc336 ("bpf: reject any prog that failed read-only lock")
Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: Martin KaFai Lau <kafai@fb.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 08d02364
...@@ -472,7 +472,9 @@ struct sock_fprog_kern { ...@@ -472,7 +472,9 @@ struct sock_fprog_kern {
struct bpf_binary_header { struct bpf_binary_header {
u16 pages; u16 pages;
u16 locked:1; u16 locked:1;
u8 image[];
/* Some arches need word alignment for their instructions */
u8 image[] __aligned(4);
}; };
struct bpf_prog { struct bpf_prog {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment