============================= [ BUG: Invalid wait context ] 6.13.0-syzkaller-gc03320a6768c #0 Not tainted ----------------------------- udevd/5205 is trying to lock: ffffffff8eac2478 (kernfs_rename_lock){....}-{3:3}, at: kernfs_path_from_node+0x92/0xb00 fs/kernfs/dir.c:229 other info that might help us debug this: context-{5:5} 4 locks held by udevd/5205: #0: ffffffff8f01d490 (tomoyo_ss){.+.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:164 [inline] #0: ffffffff8f01d490 (tomoyo_ss){.+.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:256 [inline] #0: ffffffff8f01d490 (tomoyo_ss){.+.+}-{0:0}, at: tomoyo_read_lock security/tomoyo/common.h:1108 [inline] #0: ffffffff8f01d490 (tomoyo_ss){.+.+}-{0:0}, at: tomoyo_check_open_permission+0x207/0x4f0 security/tomoyo/file.c:767 #1: ffff8880b863e8d8 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x2a/0x140 kernel/sched/core.c:598 #2: ffffffff8e93a120 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline] #2: ffffffff8e93a120 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #2: ffffffff8e93a120 (rcu_read_lock){....}-{1:3}, at: __bpf_trace_run kernel/trace/bpf_trace.c:2370 [inline] #2: ffffffff8e93a120 (rcu_read_lock){....}-{1:3}, at: bpf_trace_run2+0x1fc/0x540 kernel/trace/bpf_trace.c:2412 #3: ffff88807c4347e0 (&mm->mmap_lock){++++}-{4:4}, at: mmap_read_trylock include/linux/mmap_lock.h:209 [inline] #3: ffff88807c4347e0 (&mm->mmap_lock){++++}-{4:4}, at: stack_map_get_build_id_offset+0x431/0x870 kernel/bpf/stackmap.c:157 stack backtrace: CPU: 0 UID: 0 PID: 5205 Comm: udevd Not tainted 6.13.0-syzkaller-gc03320a6768c #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_lock_invalid_wait_context kernel/locking/lockdep.c:4828 [inline] check_wait_context kernel/locking/lockdep.c:4900 [inline] __lock_acquire+0x15a8/0x2100 kernel/locking/lockdep.c:5178 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5851 __raw_read_lock_irqsave include/linux/rwlock_api_smp.h:160 [inline] _raw_read_lock_irqsave+0xdd/0x130 kernel/locking/spinlock.c:236 kernfs_path_from_node+0x92/0xb00 fs/kernfs/dir.c:229 kernfs_path include/linux/kernfs.h:598 [inline] cgroup_path include/linux/cgroup.h:599 [inline] get_mm_memcg_path+0x95/0x350 mm/mmap_lock.c:59 __mmap_lock_do_trace_acquire_returned+0xfc/0x300 mm/mmap_lock.c:79 __mmap_lock_trace_acquire_returned include/linux/mmap_lock.h:36 [inline] mmap_read_trylock include/linux/mmap_lock.h:210 [inline] stack_map_get_build_id_offset+0x84d/0x870 kernel/bpf/stackmap.c:157 __bpf_get_stack+0x8da/0xad0 kernel/bpf/stackmap.c:483 ____bpf_get_stack kernel/bpf/stackmap.c:499 [inline] bpf_get_stack+0x33/0x50 kernel/bpf/stackmap.c:496 ____bpf_get_stack_raw_tp kernel/trace/bpf_trace.c:1948 [inline] bpf_get_stack_raw_tp+0x1a3/0x240 kernel/trace/bpf_trace.c:1938 bpf_prog_ec3b2eefa702d8d3+0x43/0x47 bpf_dispatcher_nop_func include/linux/bpf.h:1290 [inline] __bpf_prog_run include/linux/filter.h:701 [inline] bpf_prog_run include/linux/filter.h:708 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2371 [inline] bpf_trace_run2+0x2ec/0x540 kernel/trace/bpf_trace.c:2412 __traceiter_tlb_flush+0x77/0xd0 include/trace/events/tlb.h:38 trace_tlb_flush+0x11c/0x140 include/trace/events/tlb.h:38 switch_mm_irqs_off+0x77a/0xa70 context_switch kernel/sched/core.c:5357 [inline] __schedule+0x10f2/0x4be0 kernel/sched/core.c:6760 preempt_schedule_common+0x84/0xd0 kernel/sched/core.c:6939 preempt_schedule+0xe1/0xf0 kernel/sched/core.c:6963 preempt_schedule_thunk+0x1a/0x30 arch/x86/entry/thunk.S:12 unwind_next_frame+0x18f8/0x22d0 arch/x86/kernel/unwind_orc.c:672 arch_stack_walk+0x11c/0x150 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x118/0x1d0 kernel/stacktrace.c:122 kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3f/0x80 mm/kasan/common.c:68 kasan_save_free_info+0x40/0x50 mm/kasan/generic.c:582 poison_slab_object mm/kasan/common.c:247 [inline] __kasan_slab_free+0x59/0x70 mm/kasan/common.c:264 kasan_slab_free include/linux/kasan.h:233 [inline] slab_free_hook mm/slub.c:2353 [inline] slab_free mm/slub.c:4613 [inline] kfree+0x196/0x430 mm/slub.c:4761 tomoyo_realpath_from_path+0x5a9/0x5e0 security/tomoyo/realpath.c:286 tomoyo_get_realpath security/tomoyo/file.c:151 [inline] tomoyo_check_open_permission+0x258/0x4f0 security/tomoyo/file.c:771 security_file_open+0xac/0x250 security/security.c:3114 do_dentry_open+0x328/0x1b70 fs/open.c:921 vfs_open+0x3e/0x330 fs/open.c:1068 do_open fs/namei.c:3828 [inline] path_openat+0x2c84/0x3590 fs/namei.c:3987 do_filp_open+0x27f/0x4e0 fs/namei.c:4014 do_sys_openat2+0x13e/0x1d0 fs/open.c:1395 do_sys_open fs/open.c:1410 [inline] __do_sys_openat fs/open.c:1426 [inline] __se_sys_openat fs/open.c:1421 [inline] __x64_sys_openat+0x247/0x2a0 fs/open.c:1421 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f7a34d1a477 Code: Unable to access opcode bytes at 0x7f7a34d1a44d. RSP: 002b:00007ffc86b24278 EFLAGS: 00000287 ORIG_RAX: 0000000000000101 RAX: ffffffffffffffda RBX: 000056497ae2e500 RCX: 00007f7a34d1a477 RDX: 0000000000090800 RSI: 000056497ae431d0 RDI: 00000000ffffff9c RBP: 000056497ae8b2b0 R08: 0000000000090800 R09: 000056497ae431d0 R10: 0000000000000000 R11: 0000000000000287 R12: 000056497ae431d0 R13: 00000000000000ff R14: 000056495051d1c4 R15: 0000000000000000