From: Hou Tao <houtao1@xxxxxxxxxx> Hi, The patchset aims to fix one problem of bpf memory allocator destruction when there is PREEMPT_RT kernel or kernel with arch_irq_work_has_interrupt() being false (e.g. 1-cpu arm32 host or mips). The root cause is that there may be busy refill_work when the allocator is destroying and it may incur oops or other problems as shown in patch #1. Patch #1 fixes the problem by waiting for the completion of irq work during destroying and patch #2 is just a clean-up patch based on patch #1. Please see individual patches for more details. Comments are always welcome. Change Log: v2: * patch 1: fix typos and add notes about the overhead of irq_work_sync() * patch 1 & 2: add Acked-by tags from sdf@xxxxxxxxxx v1: https://lore.kernel.org/bpf/20221019115539.983394-1-houtao@xxxxxxxxxxxxxxx/T/#t Hou Tao (2): bpf: Wait for busy refill_work when destroying bpf memory allocator bpf: Use __llist_del_all() whenever possbile during memory draining kernel/bpf/memalloc.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) -- 2.29.2