./strace-static-x86_64 -e \!wait4,clock_nanosleep,nanosleep -s 100 -x -f ./syz-executor1915928413 <...> Warning: Permanently added '10.128.1.88' (ED25519) to the list of known hosts. execve("./syz-executor1915928413", ["./syz-executor1915928413"], 0x7fffecb63bc0 /* 10 vars */) = 0 brk(NULL) = 0x55558aa08000 brk(0x55558aa08d00) = 0x55558aa08d00 arch_prctl(ARCH_SET_FS, 0x55558aa08380) = 0 set_tid_address(0x55558aa08650) = 5066 set_robust_list(0x55558aa08660, 24) = 0 rseq(0x55558aa08ca0, 0x20, 0, 0x53053053) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 readlink("/proc/self/exe", "/root/syz-executor1915928413", 4096) = 28 getrandom("\x51\x3c\xd1\x91\x73\x77\xda\x7e", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x55558aa08d00 brk(0x55558aa29d00) = 0x55558aa29d00 brk(0x55558aa2a000) = 0x55558aa2a000 mprotect(0x7f472b68c000, 16384, PROT_READ) = 0 mmap(0x1ffff000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1ffff000 mmap(0x20000000, 16777216, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000000 mmap(0x21000000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x21000000 bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_LPM_TRIE, key_size=5, value_size=2, max_entries=4, map_flags=BPF_F_NO_PREALLOC|BPF_F_NUMA_NODE, inner_map_fd=-1, numa_node=0, map_name="", map_ifindex=0, btf_fd=-1, btf_key_type_id=0, btf_value_type_id=0, btf_vmlinux_value_type_id=0, map_extra=0}, 72) = 3 bpf(BPF_PROG_LOAD, {prog_type=BPF_PROG_TYPE_UNSPEC, insn_cnt=12, insns=0x20000440, license=NULL, log_level=0, log_size=0, log_buf=NULL, kern_version=KERNEL_VERSION(0, 0, 0), prog_flags=0, prog_name="", prog_ifindex=0, expected_attach_type=BPF_CGROUP_INET_INGRESS, prog_btf_fd=-1, func_info_rec_size=0, func_info=NULL, func_info_cnt=0, line_info_rec_size=0, line_info=NULL, line_info_cnt=0, attach_btf_id=0, attach_prog_fd=0, fd_array=NULL}, 144) = -1 EFAULT (Bad address) bpf(BPF_PROG_LOAD, {prog_type=BPF_PROG_TYPE_RAW_TRACEPOINT, insn_cnt=12, insns=0x20000440, license="GPL", log_level=0, log_size=0, log_buf=NULL, kern_version=KERNEL_VERSION(0, 0, 0), prog_flags=0, prog_name="", prog_ifindex=0, expected_attach_type=BPF_CGROUP_INET_INGRESS, prog_btf_fd=-1, func_info_rec_size=0, func_info=NULL, func_info_cnt=0, line_info_rec_size=0, line_info=NULL, line_info_cnt=0, attach_btf_id=0, attach_prog_fd=0, fd_array=NULL}, 144) = 4 bpf(BPF_RAW_TRACEPOINT_OPEN, {raw_tracepoint={name="hrtimer_start", prog_fd=4}}, 16) = 5 bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_LPM_TRIE, key_size=256, value_size=253, max_entries=9, map_flags=BPF_F_NO_PREALLOC, inner_map_fd=1, map_name="", map_ifindex=0, btf_fd=-1, btf_key_type_id=0, btf_value_type_id=0, btf_vmlinux_value_type_id=0, map_extra=0}, 72) = 6 [ 57.251492][ T5066] [ 57.253831][ T5066] ====================================================== [ 57.260820][ T5066] WARNING: possible circular locking dependency detected [ 57.267811][ T5066] 6.8.0-syzkaller-05243-g14bb1e8c8d4a #0 Not tainted [ 57.274457][ T5066] ------------------------------------------------------ [ 57.281443][ T5066] syz-executor191/5066 is trying to acquire lock: [ 57.287827][ T5066] ffff8880b9529470 (krc.lock){....}-{2:2}, at: kvfree_call_rcu+0x18a/0x790 [ 57.296430][ T5066] [ 57.296430][ T5066] but task is already holding lock: [ 57.303766][ T5066] ffff888018a911f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xcb/0xc10 [ 57.312611][ T5066] [ 57.312611][ T5066] which lock already depends on the new lock. [ 57.312611][ T5066] [ 57.322981][ T5066] [ 57.322981][ T5066] the existing dependency chain (in reverse order) is: [ 57.331965][ T5066] [ 57.331965][ T5066] -> #2 (&trie->lock){....}-{2:2}: [ 57.339231][ T5066] lock_acquire+0x1e4/0x530 [ 57.344228][ T5066] _raw_spin_lock_irqsave+0xd5/0x120 [ 57.350015][ T5066] trie_delete_elem+0x96/0x6a0 [ 57.355278][ T5066] bpf_prog_2c29ac5cdc6b1842+0x42/0x46 [ 57.361230][ T5066] bpf_trace_run2+0x2ec/0x530 [ 57.366400][ T5066] enqueue_hrtimer+0x335/0x3a0 [ 57.371656][ T5066] hrtimer_start_range_ns+0xaa0/0xc60 [ 57.377521][ T5066] schedule_hrtimeout_range_clock+0x277/0x480 [ 57.384082][ T5066] do_sys_poll+0xe40/0x1330 [ 57.389079][ T5066] __se_sys_ppoll+0x2a0/0x330 [ 57.394247][ T5066] do_syscall_64+0xfb/0x240 [ 57.399248][ T5066] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 57.405639][ T5066] [ 57.405639][ T5066] -> #1 (hrtimer_bases.lock){-.-.}-{2:2}: [ 57.413509][ T5066] lock_acquire+0x1e4/0x530 [ 57.418505][ T5066] _raw_spin_lock_irqsave+0xd5/0x120 [ 57.424283][ T5066] hrtimer_start_range_ns+0xdf/0xc60 [ 57.430059][ T5066] kvfree_call_rcu+0x5e6/0x790 [ 57.435320][ T5066] rtnl_register_internal+0x482/0x590 [ 57.441192][ T5066] rtnl_register+0x36/0x80 [ 57.446101][ T5066] ip_rt_init+0x2f5/0x3a0 [ 57.450924][ T5066] ip_init+0xe/0x20 [ 57.455225][ T5066] inet_init+0x3d8/0x580 [ 57.459966][ T5066] do_one_initcall+0x238/0x830 [ 57.465226][ T5066] do_initcall_level+0x157/0x210 [ 57.470658][ T5066] do_initcalls+0x3f/0x80 [ 57.475478][ T5066] kernel_init_freeable+0x435/0x5d0 [ 57.481167][ T5066] kernel_init+0x1d/0x2a0 [ 57.485989][ T5066] ret_from_fork+0x4b/0x80 [ 57.490900][ T5066] ret_from_fork_asm+0x1a/0x30 [ 57.496158][ T5066] [ 57.496158][ T5066] -> #0 (krc.lock){....}-{2:2}: [ 57.503162][ T5066] validate_chain+0x18cb/0x58e0 [ 57.508504][ T5066] __lock_acquire+0x1346/0x1fd0 [ 57.513844][ T5066] lock_acquire+0x1e4/0x530 [ 57.518839][ T5066] _raw_spin_lock+0x2e/0x40 [ 57.523832][ T5066] kvfree_call_rcu+0x18a/0x790 [ 57.529086][ T5066] trie_update_elem+0x819/0xc10 [ 57.534434][ T5066] bpf_map_update_value+0x4d3/0x540 [ 57.540132][ T5066] generic_map_update_batch+0x60d/0x900 [ 57.546172][ T5066] bpf_map_do_batch+0x3e0/0x690 [ 57.551524][ T5066] __sys_bpf+0x377/0x810 [ 57.556259][ T5066] __x64_sys_bpf+0x7c/0x90 [ 57.561168][ T5066] do_syscall_64+0xfb/0x240 [ 57.566168][ T5066] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 57.572555][ T5066] [ 57.572555][ T5066] other info that might help us debug this: [ 57.572555][ T5066] [ 57.582752][ T5066] Chain exists of: [ 57.582752][ T5066] krc.lock --> hrtimer_bases.lock --> &trie->lock [ 57.582752][ T5066] [ 57.595060][ T5066] Possible unsafe locking scenario: [ 57.595060][ T5066] [ 57.602482][ T5066] CPU0 CPU1 [ 57.607819][ T5066] ---- ---- [ 57.613179][ T5066] lock(&trie->lock); [ 57.617221][ T5066] lock(hrtimer_bases.lock); [ 57.624390][ T5066] lock(&trie->lock); [ 57.630950][ T5066] lock(krc.lock); [ 57.634745][ T5066] [ 57.634745][ T5066] *** DEADLOCK *** [ 57.634745][ T5066] [ 57.642859][ T5066] 2 locks held by syz-executor191/5066: [ 57.648370][ T5066] #0: ffffffff8e131920 (rcu_read_lock){....}-{1:2}, at: bpf_map_update_value+0x3c4/0x540 [ 57.658254][ T5066] #1: ffff888018a911f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xcb/0xc10 [ 57.667528][ T5066] [ 57.667528][ T5066] stack backtrace: [ 57.673385][ T5066] CPU: 1 PID: 5066 Comm: syz-executor191 Not tainted 6.8.0-syzkaller-05243-g14bb1e8c8d4a #0 [ 57.683417][ T5066] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/29/2024 [ 57.693444][ T5066] Call Trace: [ 57.696720][ T5066] [ 57.699630][ T5066] dump_stack_lvl+0x1e7/0x2e0 [ 57.704284][ T5066] ? __pfx_dump_stack_lvl+0x10/0x10 [ 57.709462][ T5066] ? print_circular_bug+0x130/0x1a0 [ 57.714636][ T5066] check_noncircular+0x36a/0x4a0 [ 57.719551][ T5066] ? __pfx_check_noncircular+0x10/0x10 [ 57.724983][ T5066] ? lockdep_lock+0x123/0x2b0 [ 57.729638][ T5066] ? mark_lock+0x9a/0x350 [ 57.733942][ T5066] ? _find_first_zero_bit+0xd4/0x100 [ 57.739203][ T5066] validate_chain+0x18cb/0x58e0 [ 57.744037][ T5066] ? __pfx_validate_chain+0x10/0x10 [ 57.749211][ T5066] ? stack_depot_save_flags+0x37d/0x860 [ 57.754731][ T5066] ? do_raw_spin_lock+0x14f/0x370 [ 57.759730][ T5066] ? __pfx_lock_release+0x10/0x10 [ 57.764732][ T5066] ? do_raw_spin_unlock+0x13c/0x8b0 [ 57.769921][ T5066] ? _raw_spin_unlock_irqrestore+0xdd/0x140 [ 57.775791][ T5066] ? __pfx__raw_spin_unlock_irqrestore+0x10/0x10 [ 57.782103][ T5066] ? stack_trace_save+0x118/0x1d0 [ 57.787105][ T5066] ? mark_lock+0x9a/0x350 [ 57.791411][ T5066] __lock_acquire+0x1346/0x1fd0 [ 57.796244][ T5066] lock_acquire+0x1e4/0x530 [ 57.800730][ T5066] ? kvfree_call_rcu+0x18a/0x790 [ 57.805641][ T5066] ? __pfx_lock_acquire+0x10/0x10 [ 57.810641][ T5066] ? __phys_addr+0xba/0x170 [ 57.815121][ T5066] _raw_spin_lock+0x2e/0x40 [ 57.819602][ T5066] ? kvfree_call_rcu+0x18a/0x790 [ 57.824514][ T5066] kvfree_call_rcu+0x18a/0x790 [ 57.829254][ T5066] ? __kmalloc_node+0x26e/0x4e0 [ 57.834080][ T5066] ? bpf_map_kmalloc_node+0xd3/0x1c0 [ 57.839340][ T5066] ? __pfx_kvfree_call_rcu+0x10/0x10 [ 57.844599][ T5066] ? longest_prefix_match+0x2eb/0x670 [ 57.849948][ T5066] trie_update_elem+0x819/0xc10 [ 57.854777][ T5066] bpf_map_update_value+0x4d3/0x540 [ 57.859954][ T5066] generic_map_update_batch+0x60d/0x900 [ 57.865582][ T5066] ? __pfx_generic_map_update_batch+0x10/0x10 [ 57.871627][ T5066] ? __pfx_generic_map_update_batch+0x10/0x10 [ 57.877670][ T5066] bpf_map_do_batch+0x3e0/0x690 [ 57.882497][ T5066] __sys_bpf+0x377/0x810 [ 57.886715][ T5066] ? __pfx___sys_bpf+0x10/0x10 [ 57.891458][ T5066] ? __pfx_lockdep_hardirqs_on_prepare+0x10/0x10 [ 57.897771][ T5066] ? do_syscall_64+0x10a/0x240 [ 57.902509][ T5066] __x64_sys_bpf+0x7c/0x90 [ 57.906898][ T5066] do_syscall_64+0xfb/0x240 [ 57.911382][ T5066] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 57.917253][ T5066] RIP: 0033:0x7f472b6198e9 [ 57.921643][ T5066] Code: 48 83 c4 28 c3 e8 37 17 00 00 0f 1f 80 00 00 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 [ 57.941221][ T5066] RSP: 002b:00007ffe69cef0c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 [ 57.949624][ T5066] RAX: ffffffffffffffda RBX: 00007ffe69cef298 RCX: 00007f472b6198e9 [ 57.957577][ T5066] RDX: 0000000000000038 RSI: 0000000020000000 RDI: 000000000000001a [ 57.965531][ T5066] RBP: 00007f472b68c610 R08: 00007ffe69cef298 R09: 00007ffe69cef298 [ 57.973481][ T5066] R10: 00007ffe69cef298 R11: 0000000000000246 R12: 0000000000000001 [ 57.981444][ T5066] R13: 00007ffe69cef288 R14: 0000000000000001 R15: 0000000000000001 [ 57.989400][ T5066] bpf(BPF_MAP_UPDATE_BATCH, {batch={keys=0x20000000, values=0x20000000, count=53237, map_fd=6, elem_flags=BPF_ANY, flags=0}}, 56) = 0 exit_group(0) = ? +++ exited with 0 +++