]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit - kernel/bpf/verifier.c
bpf: Limit caller's stack depth 256 for subprogs with tailcalls
authorMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Wed, 16 Sep 2020 21:10:07 +0000 (23:10 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 18 Sep 2020 02:19:20 +0000 (19:19 -0700)
commit7f6e4312e15a5c370e84eaa685879b6bdcc717e4
tree1fb4e72fb739c21f5d4165d9d175a5a960b9e520
parentcf71b174d3464c7dc22f86f25d629a8d9d5c3519
bpf: Limit caller's stack depth 256 for subprogs with tailcalls

Protect against potential stack overflow that might happen when bpf2bpf
calls get combined with tailcalls. Limit the caller's stack depth for
such case down to 256 so that the worst case scenario would result in 8k
stack size (32 which is tailcall limit * 256 = 8k).

Suggested-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
include/linux/bpf_verifier.h
kernel/bpf/verifier.c