On 2024/03/20 16:12, Alexei Starovoitov wrote: > On Wed, Mar 20, 2024 at 12:05 AM Tetsuo Handa > <penguin-kernel@xxxxxxxxxxxxxxxxxxx> wrote: >> >> On 2024/03/20 15:56, Alexei Starovoitov wrote: >>> This has nothing to do with bpf. >>> bpf never calls printk(). >> >> Please see the Sample crash report in the dashboard. >> bpf program is hitting printk() via report_bug(). > > Exactly. local_bh_neable is simply asking for a splat. > _this_ bug is in printk. > It's a generic issue. I can't catch. printk() is called due to report_bug(). If the reason report_bug() is called is that spin_unlock_bh() is bad, this is a bug in sock_map_delete_elem() rather than a bug in printk(), isn't it. > > sockmap bug is orthogonal. > It's already being looked at. Then, can we expect that this bug is also fixed shortly? > >> -> #0 (console_owner){....}-{0:0}: >> check_prev_add kernel/locking/lockdep.c:3134 [inline] >> check_prevs_add kernel/locking/lockdep.c:3253 [inline] >> validate_chain+0x18cb/0x58e0 kernel/locking/lockdep.c:3869 >> __lock_acquire+0x1346/0x1fd0 kernel/locking/lockdep.c:5137 >> lock_acquire+0x1e4/0x530 kernel/locking/lockdep.c:5754 >> console_lock_spinning_enable kernel/printk/printk.c:1873 [inline] >> console_emit_next_record kernel/printk/printk.c:2901 [inline] >> console_flush_all+0x810/0xfd0 kernel/printk/printk.c:2973 >> console_unlock+0x13b/0x4d0 kernel/printk/printk.c:3042 >> vprintk_emit+0x5a6/0x770 kernel/printk/printk.c:2342 >> _printk+0xd5/0x120 kernel/printk/printk.c:2367 >> __report_bug lib/bug.c:195 [inline] >> report_bug+0x346/0x500 lib/bug.c:219 >> handle_bug+0x3e/0x70 arch/x86/kernel/traps.c:239 >> exc_invalid_op+0x1a/0x50 arch/x86/kernel/traps.c:260 >> asm_exc_invalid_op+0x1a/0x20 arch/x86/include/asm/idtentry.h:621 >> __local_bh_enable_ip+0x1be/0x200 kernel/softirq.c:362 >> spin_unlock_bh include/linux/spinlock.h:396 [inline] >> __sock_map_delete net/core/sock_map.c:424 [inline] >> sock_map_delete_elem+0xca/0x140 net/core/sock_map.c:446 >> bpf_prog_2c29ac5cdc6b1842+0x42/0x46 >> bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] >> __bpf_prog_run include/linux/filter.h:657 [inline] >> bpf_prog_run include/linux/filter.h:664 [inline]