============================= [ BUG: Invalid wait context ] 6.13.0-rc7-syzkaller-00019-gc45323b7560e #0 Not tainted ----------------------------- syz.0.7/5905 is trying to lock: ffff88813fffc298 (&zone->lock){-.-.}-{3:3}, at: rmqueue_buddy mm/page_alloc.c:2909 [inline] ffff88813fffc298 (&zone->lock){-.-.}-{3:3}, at: rmqueue mm/page_alloc.c:3082 [inline] ffff88813fffc298 (&zone->lock){-.-.}-{3:3}, at: get_page_from_freelist+0xbbe/0x2f80 mm/page_alloc.c:3473 other info that might help us debug this: context-{2:2} 6 locks held by syz.0.7/5905: #0: ffff888025f0e120 (&q->debugfs_mutex){+.+.}-{4:4}, at: blk_trace_ioctl+0xc9/0x290 kernel/trace/blktrace.c:735 #1: ffffffff8e23a308 (relay_channels_mutex){+.+.}-{4:4}, at: relay_open+0x395/0xad0 kernel/relay.c:515 #2: ffff8880b8744c58 (&pcp->lock){+.+.}-{3:3}, at: spin_trylock include/linux/spinlock.h:361 [inline] #2: ffff8880b8744c58 (&pcp->lock){+.+.}-{3:3}, at: rmqueue_pcplist mm/page_alloc.c:3032 [inline] #2: ffff8880b8744c58 (&pcp->lock){+.+.}-{3:3}, at: rmqueue mm/page_alloc.c:3076 [inline] #2: ffff8880b8744c58 (&pcp->lock){+.+.}-{3:3}, at: get_page_from_freelist+0x350/0x2f80 mm/page_alloc.c:3473 #3: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline] #3: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #3: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: netif_receive_skb_list_internal+0x359/0xdb0 net/core/dev.c:5922 #4: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline] #4: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #4: ffffffff8e1bb900 (rcu_read_lock){....}-{1:3}, at: ip_local_deliver_finish+0x263/0x570 net/ipv4/ip_input.c:232 #5: ffff88807ebd8e98 (slock-AF_INET/1){+.-.}-{3:3}, at: tcp_v4_rcv+0x30fc/0x4380 net/ipv4/tcp_ipv4.c:2347 stack backtrace: CPU: 1 UID: 0 PID: 5905 Comm: syz.0.7 Not tainted 6.13.0-rc7-syzkaller-00019-gc45323b7560e #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120 print_lock_invalid_wait_context kernel/locking/lockdep.c:4826 [inline] check_wait_context kernel/locking/lockdep.c:4898 [inline] __lock_acquire+0x878/0x3c40 kernel/locking/lockdep.c:5176 lock_acquire.part.0+0x11b/0x380 kernel/locking/lockdep.c:5849 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162 rmqueue_buddy mm/page_alloc.c:2909 [inline] rmqueue mm/page_alloc.c:3082 [inline] get_page_from_freelist+0xbbe/0x2f80 mm/page_alloc.c:3473 __alloc_pages_noprof+0x223/0x25b0 mm/page_alloc.c:4753 alloc_pages_mpol_noprof+0x2c8/0x620 mm/mempolicy.c:2269 stack_depot_save_flags+0x8aa/0x9c0 lib/stackdepot.c:627 kasan_save_stack+0x42/0x60 mm/kasan/common.c:48 __kasan_record_aux_stack+0xba/0xd0 mm/kasan/generic.c:544 task_work_add+0xc0/0x3b0 kernel/task_work.c:77 __run_posix_cpu_timers kernel/time/posix-cpu-timers.c:1223 [inline] run_posix_cpu_timers+0x69f/0x7d0 kernel/time/posix-cpu-timers.c:1422 update_process_times+0x1a1/0x2d0 kernel/time/timer.c:2526 tick_sched_handle kernel/time/tick-sched.c:276 [inline] tick_nohz_handler+0x376/0x530 kernel/time/tick-sched.c:297 __run_hrtimer kernel/time/hrtimer.c:1739 [inline] __hrtimer_run_queues+0x5fb/0xae0 kernel/time/hrtimer.c:1803 hrtimer_interrupt+0x392/0x8e0 kernel/time/hrtimer.c:1865 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1038 [inline] __sysvec_apic_timer_interrupt+0x10f/0x400 arch/x86/kernel/apic/apic.c:1055 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x52/0xc0 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:orc_find arch/x86/kernel/unwind_orc.c:217 [inline] RIP: 0010:unwind_next_frame+0x1c8/0x20c0 arch/x86/kernel/unwind_orc.c:494 Code: 56 ff 39 d0 0f 83 09 15 00 00 48 ba 00 00 00 00 00 fc ff df 89 c1 48 8d 3c 8d 10 6a ab 91 49 89 f8 49 c1 e8 03 45 0f b6 04 10 <48> 89 fa 83 e2 07 83 c2 03 44 38 c2 7c 2f 45 84 c0 74 2a 48 89 4c RSP: 0018:ffffc90000a17c48 EFLAGS: 00000a03 RAX: 000000000008a289 RBX: 0000000000000002 RCX: 000000000008a289 RDX: dffffc0000000000 RSI: 00000000000a6001 RDI: ffffffff91cdf434 RBP: ffffc90000a17d00 R08: 0000000000000000 R09: ffffffff9189f836 R10: ffffc90000a17cb8 R11: 000000000008a289 R12: ffffc90000a17d08 R13: ffffc90000a17cb8 R14: ffffc90000a17ced R15: ffffffff89a28929 arch_stack_walk+0x95/0x100 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x95/0xd0 kernel/stacktrace.c:122 kasan_save_stack+0x33/0x60 mm/kasan/common.c:47 kasan_save_track+0x14/0x30 mm/kasan/common.c:68 unpoison_slab_object mm/kasan/common.c:319 [inline] __kasan_slab_alloc+0x89/0x90 mm/kasan/common.c:345 kasan_slab_alloc include/linux/kasan.h:250 [inline] slab_post_alloc_hook mm/slub.c:4119 [inline] slab_alloc_node mm/slub.c:4168 [inline] kmem_cache_alloc_node_noprof+0x223/0x3c0 mm/slub.c:4220 __alloc_skb+0x2b1/0x380 net/core/skbuff.c:668 alloc_skb include/linux/skbuff.h:1323 [inline] __tcp_send_ack.part.0+0x64/0x6f0 net/ipv4/tcp_output.c:4246 __tcp_send_ack net/ipv4/tcp_output.c:4278 [inline] tcp_send_ack+0x82/0xa0 net/ipv4/tcp_output.c:4278 __tcp_ack_snd_check+0x188/0xc30 net/ipv4/tcp_input.c:5775 tcp_ack_snd_check net/ipv4/tcp_input.c:5821 [inline] tcp_ack_snd_check net/ipv4/tcp_input.c:5815 [inline] tcp_rcv_established+0x8ca/0x20d0 net/ipv4/tcp_input.c:6267 tcp_v4_do_rcv+0x5ca/0xa90 net/ipv4/tcp_ipv4.c:1916 tcp_v4_rcv+0x33a0/0x4380 net/ipv4/tcp_ipv4.c:2351 ip_protocol_deliver_rcu+0xba/0x4c0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x316/0x570 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] NF_HOOK include/linux/netfilter.h:308 [inline] ip_local_deliver+0x18e/0x1f0 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:460 [inline] ip_sublist_rcv_finish+0x2c1/0x620 net/ipv4/ip_input.c:578 ip_list_rcv_finish.constprop.0+0x559/0x720 net/ipv4/ip_input.c:628 ip_sublist_rcv net/ipv4/ip_input.c:636 [inline] ip_list_rcv+0x339/0x450 net/ipv4/ip_input.c:670 __netif_receive_skb_list_ptype net/core/dev.c:5747 [inline] __netif_receive_skb_list_core+0x755/0x950 net/core/dev.c:5794 __netif_receive_skb_list net/core/dev.c:5846 [inline] netif_receive_skb_list_internal+0x753/0xdb0 net/core/dev.c:5937 gro_normal_list include/net/gro.h:515 [inline] gro_normal_list include/net/gro.h:511 [inline] napi_complete_done+0x218/0x940 net/core/dev.c:6288 virtqueue_napi_complete drivers/net/virtio_net.c:759 [inline] virtnet_poll+0x1c03/0x39f0 drivers/net/virtio_net.c:3014 __napi_poll.constprop.0+0xb7/0x550 net/core/dev.c:6902 napi_poll net/core/dev.c:6971 [inline] net_rx_action+0xa94/0x1010 net/core/dev.c:7093 handle_softirqs+0x213/0x8f0 kernel/softirq.c:561 __do_softirq kernel/softirq.c:595 [inline] invoke_softirq kernel/softirq.c:435 [inline] __irq_exit_rcu+0x109/0x170 kernel/softirq.c:662 irq_exit_rcu+0x9/0x30 kernel/softirq.c:678 common_interrupt+0xbf/0xe0 arch/x86/kernel/irq.c:278 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline] RIP: 0010:_raw_spin_unlock_irqrestore+0x31/0x80 kernel/locking/spinlock.c:194 Code: f5 53 48 8b 74 24 10 48 89 fb 48 83 c7 18 e8 76 32 4a f6 48 89 df e8 ce b1 4a f6 f7 c5 00 02 00 00 75 23 9c 58 f6 c4 02 75 37 01 00 00 00 e8 c5 96 3b f6 65 8b 05 86 40 d7 74 85 c0 74 16 5b RSP: 0018:ffffc900039e73c8 EFLAGS: 00000246 RAX: 0000000000000002 RBX: ffff88813fffc280 RCX: 1ffffffff2dcac10 RDX: 0000000000000000 RSI: ffffffff8b6cd9e0 RDI: ffffffff8bd1ef20 RBP: 0000000000000206 R08: 0000000000000001 R09: fffffbfff2dca798 R10: ffffffff96e53cc7 R11: dffffc0000000000 R12: 000000000000001f R13: dffffc0000000000 R14: ffff8880b8744cd8 R15: ffff8880b8744c40 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline] rmqueue_bulk mm/page_alloc.c:2328 [inline] __rmqueue_pcplist+0x5b1/0x1600 mm/page_alloc.c:3003 rmqueue_pcplist mm/page_alloc.c:3045 [inline] rmqueue mm/page_alloc.c:3076 [inline] get_page_from_freelist+0x3d2/0x2f80 mm/page_alloc.c:3473 __alloc_pages_noprof+0x223/0x25b0 mm/page_alloc.c:4753 alloc_pages_mpol_noprof+0x2c8/0x620 mm/mempolicy.c:2269 alloc_slab_page mm/slub.c:2423 [inline] allocate_slab mm/slub.c:2589 [inline] new_slab+0x2c9/0x410 mm/slub.c:2642 ___slab_alloc+0xd7d/0x17a0 mm/slub.c:3830 __slab_alloc.constprop.0+0x56/0xb0 mm/slub.c:3920 __slab_alloc_node mm/slub.c:3995 [inline] slab_alloc_node mm/slub.c:4156 [inline] __kmalloc_cache_noprof+0xfa/0x410 mm/slub.c:4324 kmalloc_noprof include/linux/slab.h:901 [inline] kzalloc_noprof include/linux/slab.h:1037 [inline] relay_create_buf kernel/relay.c:154 [inline] relay_open_buf.part.0+0x91/0xb90 kernel/relay.c:384 relay_open_buf kernel/relay.c:536 [inline] relay_open+0x653/0xad0 kernel/relay.c:517 do_blk_trace_setup+0x4fd/0xb40 kernel/trace/blktrace.c:590 __blk_trace_setup+0xd8/0x180 kernel/trace/blktrace.c:630 blk_trace_ioctl+0x163/0x290 kernel/trace/blktrace.c:740 blkdev_ioctl+0x109/0x6d0 block/ioctl.c:682 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:906 [inline] __se_sys_ioctl fs/ioctl.c:892 [inline] __x64_sys_ioctl+0x190/0x200 fs/ioctl.c:892 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f5014b85d29 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f501595a038 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007f5014d75fa0 RCX: 00007f5014b85d29 RDX: 0000000020000380 RSI: 00000000c0481273 RDI: 0000000000000003 RBP: 00007f5014c01b08 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f5014d75fa0 R15: 00007ffcd3c5e5f8 ---------------- Code disassembly (best guess), 2 bytes skipped: 0: 39 d0 cmp %edx,%eax 2: 0f 83 09 15 00 00 jae 0x1511 8: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx f: fc ff df 12: 89 c1 mov %eax,%ecx 14: 48 8d 3c 8d 10 6a ab lea -0x6e5495f0(,%rcx,4),%rdi 1b: 91 1c: 49 89 f8 mov %rdi,%r8 1f: 49 c1 e8 03 shr $0x3,%r8 23: 45 0f b6 04 10 movzbl (%r8,%rdx,1),%r8d * 28: 48 89 fa mov %rdi,%rdx <-- trapping instruction 2b: 83 e2 07 and $0x7,%edx 2e: 83 c2 03 add $0x3,%edx 31: 44 38 c2 cmp %r8b,%dl 34: 7c 2f jl 0x65 36: 45 84 c0 test %r8b,%r8b 39: 74 2a je 0x65 3b: 48 rex.W 3c: 89 .byte 0x89 3d: 4c rex.WR