summaryrefslogtreecommitdiff
path: root/scripts/patch-kernel
diff options
context:
space:
mode:
authorYafang Shao <laoar.shao@gmail.com>2023-05-15 13:08:47 +0000
committerDaniel Borkmann <daniel@iogearbox.net>2023-05-15 23:41:59 +0200
commit108598c39eefbedc9882273ac0df96127a629220 (patch)
treef3868a00eea43dac89fc058fb0925f122e90d811 /scripts/patch-kernel
parent47e79cbeea4b3891ad476047f4c68543eb51c8e0 (diff)
downloadkernel-108598c39eefbedc9882273ac0df96127a629220.tar.gz
bpf: Fix memleak due to fentry attach failure
If it fails to attach fentry, the allocated bpf trampoline image will be left in the system. That can be verified by checking /proc/kallsyms. This meamleak can be verified by a simple bpf program as follows: SEC("fentry/trap_init") int fentry_run() { return 0; } It will fail to attach trap_init because this function is freed after kernel init, and then we can find the trampoline image is left in the system by checking /proc/kallsyms. $ tail /proc/kallsyms ffffffffc0613000 t bpf_trampoline_6442453466_1 [bpf] ffffffffc06c3000 t bpf_trampoline_6442453466_1 [bpf] $ bpftool btf dump file /sys/kernel/btf/vmlinux | grep "FUNC 'trap_init'" [2522] FUNC 'trap_init' type_id=119 linkage=static $ echo $((6442453466 & 0x7fffffff)) 2522 Note that there are two left bpf trampoline images, that is because the libbpf will fallback to raw tracepoint if -EINVAL is returned. Fixes: e21aa341785c ("bpf: Fix fexit trampoline.") Signed-off-by: Yafang Shao <laoar.shao@gmail.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Song Liu <song@kernel.org> Cc: Jiri Olsa <olsajiri@gmail.com> Link: https://lore.kernel.org/bpf/20230515130849.57502-2-laoar.shao@gmail.com
Diffstat (limited to 'scripts/patch-kernel')
0 files changed, 0 insertions, 0 deletions
520c6a49af833c83de6c74525ce8e07bbe6d783'>X.509: Add simple ASN.1 grammar compilerDavid Howells 2012-01-26kbuild: disable -Wmissing-field-initializers for W=1Kirill A. Shutemov 2011-08-31scripts/Makefile.build: do not reference EXTRA_CFLAGS as CFLAGS replacementArnaud Lacombe 2011-05-24Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek...Linus Torvalds 2011-05-19ftrace/kbuild: Add recordmcount files to force full buildMichal Marek 2011-05-16kbuild/recordmcount: Add RECORDMCOUNT_WARN to warn about mcount callersSteven Rostedt 2011-05-02kbuild: Allow to combine multiple W= levelsMichal Marek 2011-04-29kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0Dave Jones 2011-04-28kbuild: implement several W= levelsSam Ravnborg 2011-04-20kbuild: Fix build with binutils <= 2.19Michal Marek 2011-04-18kbuild: Use the deterministic mode of arMichal Marek 2011-03-09kbuild: Add extra gcc checksBorislav Petkov 2010-11-18ftrace: Speed up recordmcountWu Zhangjin 2010-10-21Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds 2010-10-18ftrace: Remove recursion between recordmcount and scripts/mod/emptySteven Rostedt 2010-10-15ftrace: Use objtree for C version of recordmcountSteven Rostedt 2010-10-14ftrace/x86: Add support for C version of recordmcountSteven Rostedt 2010-09-02ARM: 6317/1: ftrace: pass KBUILD_CFLAGS to record_mcount.plRabin Vincent 2010-08-03kbuild: allow assignment to {A,C}FLAGS_KERNEL on the command lineSam Ravnborg 2010-08-03kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command lineSam Ravnborg 2010-06-04Makefile.build: make KBUILD_SYMTYPES work againDon Zickus 2010-02-02kbuild: Fix linking error built-in.o no such file or directoryJiafu He 2009-12-17MIPS: Tracing: Add an endian argument to scripts/recordmcount.plWu Zhangjin 2009-09-21kbuild: Don't define ALIGN and ENTRY when preprocessing linker scripts.Tim Abbott 2009-09-20arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0Sam Ravnborg 2009-09-20kbuild: fail build if recordmcount.pl failsAndi Kleen 2009-09-20kbuild: echo the record_mcount commandAndi Kleen