================================
WARNING: inconsistent lock state
syzkaller #0 Not tainted
--------------------------------
inconsistent {INITIAL USE} -> {IN-NMI} usage.
syz.0.30/4443 [HC2[2]:SC0[0]:HE0:SE1] takes:
ffffffff8cc845f8 (kernfs_rename_lock){....}-{2:2}, at: kernfs_path_from_node+0x85/0xd30 fs/kernfs/dir.c:232
{INITIAL USE} state was registered at:
lock_acquire+0x1bb/0x4a0 kernel/locking/lockdep.c:5662
__raw_spin_lock_irq include/linux/spinlock_api_smp.h:119 [inline]
_raw_spin_lock_irq+0xab/0xf0 kernel/locking/spinlock.c:170
spin_lock_irq include/linux/spinlock.h:376 [inline]
kernfs_rename_ns+0x550/0x990 fs/kernfs/dir.c:1734
sysfs_rename_link_ns+0x171/0x1b0 fs/sysfs/symlink.c:192
device_rename+0x11c/0x1a0 drivers/base/core.c:4577
dev_change_name+0x376/0x900 net/core/dev.c:1273
do_setlink+0x93d/0x3e60 net/core/rtnetlink.c:2817
__rtnl_newlink net/core/rtnetlink.c:3614 [inline]
rtnl_newlink+0x17d9/0x20a0 net/core/rtnetlink.c:3661
rtnetlink_rcv_msg+0x87c/0xfc0 net/core/rtnetlink.c:6158
netlink_rcv_skb+0x1fb/0x450 net/netlink/af_netlink.c:2511
netlink_unicast_kernel net/netlink/af_netlink.c:1318 [inline]
netlink_unicast+0x74d/0x8d0 net/netlink/af_netlink.c:1344
netlink_sendmsg+0x8ad/0xbd0 net/netlink/af_netlink.c:1872
sock_sendmsg_nosec net/socket.c:718 [inline]
__sock_sendmsg net/socket.c:730 [inline]
__sys_sendto+0x497/0x650 net/socket.c:2152
__do_sys_sendto net/socket.c:2164 [inline]
__se_sys_sendto net/socket.c:2160 [inline]
__x64_sys_sendto+0xda/0xf0 net/socket.c:2160
do_syscall_x64 arch/x86/entry/common.c:46 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:76
entry_SYSCALL_64_after_hwframe+0x68/0xd2
irq event stamp: 3556
hardirqs last enabled at (3555): [<ffffffff8a2f15d8>] do_syscall_64+0x58/0xa0 arch/x86/entry/common.c:82
hardirqs last disabled at (3556): [<ffffffff8a2f5e8f>] irqentry_enter+0xf/0x50 kernel/entry/common.c:328
softirqs last enabled at (3394): [<ffffffff81a9903c>] rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
softirqs last enabled at (3394): [<ffffffff81a9903c>] rcu_read_lock include/linux/rcupdate.h:791 [inline]
softirqs last enabled at (3394): [<ffffffff81a9903c>] __rhashtable_insert_fast include/linux/rhashtable.h:713 [inline]
softirqs last enabled at (3394): [<ffffffff81a9903c>] rhltable_insert_key include/linux/rhashtable.h:852 [inline]
softirqs last enabled at (3394): [<ffffffff81a9903c>] rhltable_insert include/linux/rhashtable.h:879 [inline]
softirqs last enabled at (3394): [<ffffffff81a9903c>] toggle_bp_slot+0x199c/0x2bc0 kernel/events/hw_breakpoint.c:521
softirqs last disabled at (3392): [<ffffffff81a9ab5c>] local_bh_disable include/linux/bottom_half.h:20 [inline]
softirqs last disabled at (3392): [<ffffffff81a9ab5c>] rht_lock+0x1c/0x150 include/linux/rhashtable.h:329
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(kernfs_rename_lock);
<Interrupt>
lock(kernfs_rename_lock);
*** DEADLOCK ***
1 lock held by syz.0.30/4443:
#0: ffffffff8cb2de60 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
#0: ffffffff8cb2de60 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:791 [inline]
#0: ffffffff8cb2de60 (rcu_read_lock){....}-{1:2}, at: __perf_event_output kernel/events/core.c:7728 [inline]
#0: ffffffff8cb2de60 (rcu_read_lock){....}-{1:2}, at: perf_event_output_forward+0xbe/0x2f0 kernel/events/core.c:7750
stack backtrace:
CPU: 0 PID: 4443 Comm: syz.0.30 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026
Call Trace:
<#DB>
dump_stack_lvl+0x188/0x24e lib/dump_stack.c:106
lock_acquire+0x2df/0x4a0 kernel/locking/lockdep.c:5653
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0xb0/0x100 kernel/locking/spinlock.c:162
kernfs_path_from_node+0x85/0xd30 fs/kernfs/dir.c:232
kernfs_path include/linux/kernfs.h:595 [inline]
cgroup_path include/linux/cgroup.h:674 [inline]
get_mm_memcg_path+0xb9/0x360 mm/mmap_lock.c:82
__mmap_lock_do_trace_acquire_returned+0xe7/0x390 mm/mmap_lock.c:102
__mmap_lock_trace_acquire_returned include/linux/mmap_lock.h:36 [inline]
mmap_read_trylock include/linux/mmap_lock.h:137 [inline]
stack_map_get_build_id_offset+0x6b2/0x970 kernel/bpf/stackmap.c:144
__bpf_get_stackid+0x55d/0x920 kernel/bpf/stackmap.c:250
bpf_prog_12712c88fd19bd5b+0x21/0x25
bpf_dispatcher_nop_func include/linux/bpf.h:1012 [inline]
__bpf_prog_run include/linux/filter.h:607 [inline]
bpf_prog_run include/linux/filter.h:614 [inline]
bpf_overflow_handler+0x522/0x7c0 kernel/events/core.c:10321
__perf_event_overflow+0x448/0x610 kernel/events/core.c:9496
perf_swevent_overflow kernel/events/core.c:9579 [inline]
perf_swevent_event+0x315/0x570 kernel/events/core.c:9630
perf_bp_event+0x312/0x3f0 kernel/events/core.c:10518
hw_breakpoint_handler arch/x86/kernel/hw_breakpoint.c:555 [inline]
hw_breakpoint_exceptions_notify+0x152/0x470 arch/x86/kernel/hw_breakpoint.c:586
notifier_call_chain kernel/notifier.c:87 [inline]
atomic_notifier_call_chain+0x17a/0x2b0 kernel/notifier.c:225
notify_die+0x141/0x1a0 kernel/notifier.c:593
notify_debug+0x20/0x30 arch/x86/kernel/traps.c:1018
exc_debug_kernel arch/x86/kernel/traps.c:1075 [inline]
exc_debug+0xd9/0x130 arch/x86/kernel/traps.c:1175
asm_exc_debug+0x1a/0x40 arch/x86/include/asm/idtentry.h:648
RIP: 0010:__get_user_nocheck_8+0x9/0x13 arch/x86/lib/getuser.S:160
Code: 90 0f 01 cb 0f ae e8 0f b7 10 31 c0 0f 01 ca c3 90 0f 01 cb 0f ae e8 8b 10 31 c0 0f 01 ca c3 90 90 0f 01 cb 0f ae e8 48 8b 10 <31> c0 0f 01 ca c3 90 0f 01 ca 31 d2 48 c7 c0 f2 ff ff ff c3 00 00
RSP: 0000:ffffc900032d7640 EFLAGS: 00040806
RAX: 0000200000000300 RBX: dffffc0000000000 RCX: ffff8880276a8000
RDX: 00006370692f736e RSI: 0000200000000300 RDI: 00007fffffffeff0
RBP: 0000000000000000 R08: 000000000000007f R09: 0000000000000000
R10: dffffc0000000000 R11: fffff5200065af27 R12: 00000000ffffffff
R13: 0000200000000300 R14: 000000000000007f R15: 00007fffffffeff0
</#DB>
<TASK>
perf_callchain_user+0x55d/0x13c0 arch/x86/events/core.c:2982
get_perf_callchain+0x39e/0x490 kernel/events/callchain.c:219
perf_callchain kernel/events/core.c:7512 [inline]
perf_prepare_sample+0x399/0x2020 kernel/events/core.c:7545
__perf_event_output kernel/events/core.c:7730 [inline]
perf_event_output_forward+0x197/0x2f0 kernel/events/core.c:7750
__perf_event_overflow+0x448/0x610 kernel/events/core.c:9496
perf_event_overflow kernel/events/core.c:9517 [inline]
perf_swevent_hrtimer+0x472/0x630 kernel/events/core.c:10967
__run_hrtimer kernel/time/hrtimer.c:1751 [inline]
__hrtimer_run_queues+0x50b/0xd50 kernel/time/hrtimer.c:1815
hrtimer_interrupt+0x3c5/0x9c0 kernel/time/hrtimer.c:1877
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1107 [inline]
__sysvec_apic_timer_interrupt+0x153/0x5a0 arch/x86/kernel/apic/apic.c:1124
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
sysvec_apic_timer_interrupt+0x4d/0xc0 arch/x86/kernel/apic/apic.c:1118
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0033:0x7fc47ad4f4a0
Code: 43 08 48 3b 43 10 0f 84 11 08 00 00 48 8d 50 01 48 89 53 08 c6 00 20 8b 44 24 18 83 6c 24 10 01 89 44 24 14 e9 b9 f2 ff ff 90 <48> 89 ef e8 38 be ef ff 49 89 c4 e9 af ea ff ff 0f b6 4c 24 20 b8
RSP: 002b:00007fff6d7c7f30 EFLAGS: 00000246
RAX: 0000000000000001 RBX: 00007fff6d7c8460 RCX: 2f666c65732f636f
RDX: 00007fff6d7c8558 RSI: 00007fc47ae5d140 RDI: 00007fc47afdcfe0
RBP: 0000200000000300 R08: 00007fff6d7c8690 R09: 00000000ffffffff
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000073 R14: 00007fc47ae320dd R15: 00007fff6d7c8520
</TASK>
----------------
Code disassembly (best guess):
0: 90 nop
1: 0f 01 cb stac
4: 0f ae e8 lfence
7: 0f b7 10 movzwl (%rax),%edx
a: 31 c0 xor %eax,%eax
c: 0f 01 ca clac
f: c3 ret
10: 90 nop
11: 0f 01 cb stac
14: 0f ae e8 lfence
17: 8b 10 mov (%rax),%edx
19: 31 c0 xor %eax,%eax
1b: 0f 01 ca clac
1e: c3 ret
1f: 90 nop
20: 90 nop
21: 0f 01 cb stac
24: 0f ae e8 lfence
27: 48 8b 10 mov (%rax),%rdx
* 2a: 31 c0 xor %eax,%eax <-- trapping instruction
2c: 0f 01 ca clac
2f: c3 ret
30: 90 nop
31: 0f 01 ca clac
34: 31 d2 xor %edx,%edx
36: 48 c7 c0 f2 ff ff ff mov $0xfffffffffffffff2,%rax
3d: c3 ret