================================================================== BUG: KASAN: stack-out-of-bounds in walk_stackframe+0x11c/0x260 arch/riscv/kernel/stacktrace.c:57 Read of size 8 at addr ffffaf8010643e10 by task syz-executor.0/2051 CPU: 0 PID: 2051 Comm: syz-executor.0 Not tainted 5.17.0-rc1-syzkaller-00002-g0966d385830d #0 Hardware name: riscv-virtio,qemu (DT) Call Trace: [] dump_backtrace+0x2e/0x3c arch/riscv/kernel/stacktrace.c:113 [] show_stack+0x34/0x40 arch/riscv/kernel/stacktrace.c:119 [] __dump_stack lib/dump_stack.c:88 [inline] [] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:106 [] print_address_description.constprop.0+0x2a/0x330 mm/kasan/report.c:255 [] __kasan_report mm/kasan/report.c:442 [inline] [] kasan_report+0x184/0x1e0 mm/kasan/report.c:459 [] check_region_inline mm/kasan/generic.c:183 [inline] [] __asan_load8+0x6e/0x96 mm/kasan/generic.c:256 [] walk_stackframe+0x11c/0x260 arch/riscv/kernel/stacktrace.c:57 [] arch_stack_walk+0x2c/0x3c arch/riscv/kernel/stacktrace.c:146 [] stack_trace_save+0xa6/0xd8 kernel/stacktrace.c:122 [] save_stack+0x112/0x16c mm/page_owner.c:121 The buggy address belongs to the page: page:ffffaf807aae52d8 refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x90843 flags: 0x9000000000(section=18|node=0|zone=0) raw: 0000009000000000 0000000000000000 ffffaf807aae52e0 0000000000000000 raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000 raw: 00000000000007ff page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 2, migratetype Unmovable, gfp_mask 0x400dc0(GFP_KERNEL_ACCOUNT|__GFP_ZERO), pid 2030, ts 586249138200, free_ts 457387938200 __set_page_owner+0x48/0x136 mm/page_owner.c:183 set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook+0xd0/0x10a mm/page_alloc.c:2427 prep_new_page mm/page_alloc.c:2434 [inline] get_page_from_freelist+0x8da/0x12d8 mm/page_alloc.c:4165 __alloc_pages+0x150/0x3b6 mm/page_alloc.c:5389 __alloc_pages_node include/linux/gfp.h:572 [inline] alloc_pages_node include/linux/gfp.h:595 [inline] alloc_thread_stack_node kernel/fork.c:262 [inline] dup_task_struct kernel/fork.c:887 [inline] copy_process+0x482/0x3c34 kernel/fork.c:1998 kernel_clone+0xee/0x920 kernel/fork.c:2555 __do_sys_clone+0xf2/0x12e kernel/fork.c:2672 sys_clone+0x32/0x44 kernel/fork.c:2640 ret_from_syscall+0x0/0x2 page last free stack trace: __reset_page_owner+0x4a/0xea mm/page_owner.c:142 reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1352 [inline] free_pcp_prepare+0x29c/0x45e mm/page_alloc.c:1404 free_unref_page_prepare mm/page_alloc.c:3325 [inline] free_unref_page+0x6a/0x31e mm/page_alloc.c:3404 free_the_page mm/page_alloc.c:706 [inline] free_compound_page+0x70/0x8a mm/page_alloc.c:729 destroy_compound_page include/linux/mm.h:889 [inline] __put_compound_page+0x7c/0xb0 mm/swap.c:112 __put_page+0x48/0x100 mm/swap.c:128 folio_put include/linux/mm.h:1199 [inline] put_page include/linux/mm.h:1237 [inline] __skb_frag_unref include/linux/skbuff.h:3178 [inline] skb_release_data+0x2f8/0x3c4 net/core/skbuff.c:672 skb_release_all net/core/skbuff.c:742 [inline] __kfree_skb net/core/skbuff.c:756 [inline] kfree_skb_reason net/core/skbuff.c:776 [inline] kfree_skb_reason+0x11a/0x40a net/core/skbuff.c:770 kfree_skb include/linux/skbuff.h:1114 [inline] kfree_skb_list net/core/skbuff.c:785 [inline] skb_release_data+0x33a/0x3c4 net/core/skbuff.c:675 skb_release_all net/core/skbuff.c:742 [inline] __kfree_skb+0x38/0x50 net/core/skbuff.c:756 __sk_defer_free_flush net/ipv4/tcp.c:1592 [inline] sk_defer_free_flush include/net/tcp.h:1378 [inline] tcp_recvmsg+0x1f2/0x414 net/ipv4/tcp.c:2566 inet_recvmsg+0x10a/0x4ba net/ipv4/af_inet.c:850 sock_recvmsg_nosec net/socket.c:948 [inline] sock_recvmsg net/socket.c:966 [inline] sock_recvmsg net/socket.c:962 [inline] sock_read_iter+0x26c/0x2ba net/socket.c:1039 call_read_iter include/linux/fs.h:2068 [inline] new_sync_read+0x3ae/0x3d8 fs/read_write.c:400 vfs_read+0x2ce/0x324 fs/read_write.c:481 ksys_read+0x1c4/0x224 fs/read_write.c:619 Memory state around the buggy address: ffffaf8010643d00: 00 00 00 f3 00 00 00 00 00 00 00 00 00 00 00 00 ffffaf8010643d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffffaf8010643e00: f1 f1 f1 f1 00 00 f2 f2 00 00 f3 f3 f1 f1 f1 f1 ^ ffffaf8010643e80: 00 00 00 f3 f3 f3 f3 f3 00 00 00 00 00 00 00 00 ffffaf8010643f00: 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 00 00 00 ================================================================== Unable to handle kernel paging request at virtual address ffffffff8016f2dc Oops [#1] Modules linked in: CPU: 0 PID: 2051 Comm: syz-executor.0 Tainted: G B 5.17.0-rc1-syzkaller-00002-g0966d385830d #0 Hardware name: riscv-virtio,qemu (DT) epc : __rb_change_child include/linux/rbtree_augmented.h:176 [inline] epc : __rb_rotate_set_parents lib/rbtree.c:81 [inline] epc : __rb_insert lib/rbtree.c:215 [inline] epc : rb_insert_color+0xfc/0x246 lib/rbtree.c:436 ra : __rb_change_child include/linux/rbtree_augmented.h:176 [inline] ra : __rb_rotate_set_parents lib/rbtree.c:81 [inline] ra : __rb_insert lib/rbtree.c:215 [inline] ra : rb_insert_color+0xfc/0x246 lib/rbtree.c:436 epc : ffffffff80c263b8 ra : ffffffff80c263b8 sp : ffffaf8010643830 gp : ffffffff85863ac0 tp : ffffaf8007401840 t0 : 0000000000046000 t1 : fffffffef0b187a1 t2 : 0000000000000000 s0 : ffffaf8010643870 s1 : ffffaf805a9cbd18 a0 : 0000000000000000 a1 : 0000000000000003 a2 : fffffffef002de5c a3 : ffffffff80c263b8 a4 : 0000000000000000 a5 : ffffffff8016f2dc a6 : 0000000000f00000 a7 : ffffffff858c3d0b s2 : ffffaf805a9d7500 s3 : ffffaf805a9cbd18 s4 : ffffffff8016f2d4 s5 : ffffaf805a9cb4d0 s6 : ffffaf805a9cbd20 s7 : ffffaf805a9cb4d0 s8 : ffffaf805a9cb490 s9 : ffffaf805a9cbd50 s10: ffffaf805a9cb400 s11: 0000000000010504 t3 : 0000000061736944 t4 : fffffffef0b187a1 t5 : fffffffef0b187a2 t6 : ffffaf80106437d8 status: 0000000000000100 badaddr: ffffffff8016f2dc cause: 000000000000000f [] rb_insert_color_cached include/linux/rbtree.h:114 [inline] [] rb_add_cached include/linux/rbtree.h:183 [inline] [] timerqueue_add+0x144/0x1d0 lib/timerqueue.c:40 [] enqueue_hrtimer kernel/time/hrtimer.c:1091 [inline] [] __run_hrtimer kernel/time/hrtimer.c:1702 [inline] [] __hrtimer_run_queues+0x8b4/0xa16 kernel/time/hrtimer.c:1749 [] hrtimer_interrupt+0x1d4/0x3ea kernel/time/hrtimer.c:1811 [] riscv_timer_interrupt+0x5c/0x6a drivers/clocksource/timer-riscv.c:97 [] handle_percpu_devid_irq+0x17e/0x2ae kernel/irq/chip.c:931 [] generic_handle_irq_desc include/linux/irqdesc.h:158 [inline] [] handle_irq_desc kernel/irq/irqdesc.c:646 [inline] [] generic_handle_domain_irq+0x7c/0x9c kernel/irq/irqdesc.c:680 [] riscv_intc_irq+0x7e/0xc8 drivers/irqchip/irq-riscv-intc.c:40 [] generic_handle_arch_irq+0x36/0x54 kernel/irq/handle.c:238 [] ret_from_exception+0x0/0x10 [] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:151 [inline] [] _raw_spin_unlock_irqrestore+0x68/0x98 kernel/locking/spinlock.c:194 ---[ end trace 0000000000000000 ]---