OSDN Git Service

bpf: Fix potential call bpf_link_free() in atomic context
authorMuchun Song <songmuchun@bytedance.com>
Thu, 17 Sep 2020 07:44:53 +0000 (15:44 +0800)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 21 Sep 2020 19:20:17 +0000 (21:20 +0200)
commit31f23a6a181c81543b10a1a9056b0e6c7ef1c747
treee275566fe13c8fdd63f4b6206173f2e9692a5844
parent70b971118e074d5042715587953f27929e99117a
bpf: Fix potential call bpf_link_free() in atomic context

The in_atomic() macro cannot always detect atomic context, in particular,
it cannot know about held spinlocks in non-preemptible kernels. Although,
there is no user call bpf_link_put() with holding spinlock now, be on the
safe side, so we can avoid this in the future.

Signed-off-by: Muchun Song <songmuchun@bytedance.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Song Liu <songliubraving@fb.com>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/20200917074453.20621-1-songmuchun@bytedance.com
kernel/bpf/syscall.c