]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: net: bpf: fix register saving
authorRussell King <rmk+kernel@armlinux.org.uk>
Sat, 13 Jan 2018 22:38:18 +0000 (22:38 +0000)
committerRussell King <rmk+kernel@armlinux.org.uk>
Wed, 17 Jan 2018 19:38:07 +0000 (19:38 +0000)
commit9ad918034355988af99b6e1ada58b6105b977215
tree7dd2b1eb8b47f46e6d621a81a745d4158a002182
parentfb97a88e89804ecb03b48c99d2ce21f076ee7b75
ARM: net: bpf: fix register saving

When an eBPF program tail-calls another eBPF program, it enters it after
the prologue to avoid having complex stack manipulations.  This can lead
to kernel oopses, and similar.

Resolve this by always using a fixed stack layout, a CPU register frame
pointer, and using this when reloading registers before returning.

Fixes: 3b9837afcaa3 ("arm: eBPF JIT compiler")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/net/bpf_jit_32.c