------------[ cut here ]------------ kernel BUG at [] mm/page_table_check.c:142! Kernel BUG [#1] Modules linked in: CPU: 1 UID: 0 PID: 6301 Comm: syz.1.414 Not tainted syzkaller #0 PREEMPT Hardware name: riscv-virtio,qemu (DT) epc : __page_table_check_zero+0x396/0x544 mm/page_table_check.c:142 ra : __page_table_check_zero+0x396/0x544 mm/page_table_check.c:142 epc : ffffffff80bfdcce ra : ffffffff80bfdcce sp : ffff8f8003f06a80 gp : ffffffff89f9df20 tp : ffffaf801b3d3500 t0 : ffffffff80ab5ee0 t1 : fffff5ef02708c13 t2 : ffffffff80b91ae2 s0 : ffff8f8003f06af0 s1 : ffffaf8013846098 a0 : 0000000000000005 a1 : 0000000000000000 a2 : 0000000000080000 a3 : ffffffff80bfdcce a4 : ffff8f8005332cb0 a5 : 00000000003f6cb0 a6 : 0000000000000003 a7 : ffffaf801384609b s2 : 0000000000000001 s3 : 0000000000000000 s4 : ffffaf8013846050 s5 : dfffffff00000000 s6 : 00000000000b8e01 s7 : 0000000000000001 s8 : 0000000000000000 s9 : 0000000000007fff s10: fffffffef1416bb0 s11: ffffffff8a0b5d80 t3 : 0000000000000001 t4 : fffff5ef02708c13 t5 : fffff5ef02708c14 t6 : 0000000000000002 ssp : 0000000000000000 status: 0000000200000120 badaddr: ffffffff80bfdcce cause: 0000000000000003 [] __page_table_check_zero+0x396/0x544 mm/page_table_check.c:142 [] page_table_check_free include/linux/page_table_check.h:43 [inline] [] free_pages_prepare mm/page_alloc.c:1434 [inline] [] __free_frozen_pages+0x7e6/0x1480 mm/page_alloc.c:2973 [] free_frozen_pages+0xe/0x18 mm/page_alloc.c:3011 [] __folio_put+0x296/0x378 mm/swap.c:112 [] folio_put include/linux/mm.h:1617 [inline] [] free_folio_and_swap_cache+0x100/0x13c mm/swap_state.c:332 [] __folio_split+0x10ce/0x16f8 mm/huge_memory.c:4088 [] __split_huge_page_to_list_to_order+0x7e/0x140 mm/huge_memory.c:4200 [] split_huge_page_to_list_to_order include/linux/huge_mm.h:385 [inline] [] split_folio_to_list mm/huge_memory.c:4264 [inline] [] madvise_free_huge_pmd+0x50a/0xa14 mm/huge_memory.c:2305 [] madvise_free_pte_range+0xb0c/0x1844 mm/madvise.c:670 [] walk_pmd_range mm/pagewalk.c:130 [inline] [] walk_pud_range mm/pagewalk.c:224 [inline] [] walk_p4d_range mm/pagewalk.c:262 [inline] [] walk_pgd_range+0xcc6/0x1f84 mm/pagewalk.c:303 [] __walk_page_range+0x138/0x7a8 mm/pagewalk.c:410 [] walk_page_range_vma_unsafe+0x212/0x868 mm/pagewalk.c:714 [] walk_page_range_vma+0x5a/0x84 mm/pagewalk.c:724 [] madvise_free_single_vma+0x432/0xae0 mm/madvise.c:831 [] madvise_dontneed_free mm/madvise.c:960 [inline] [] madvise_vma_behavior+0x9a8/0x251c mm/madvise.c:1370 [] madvise_walk_vmas+0x68c/0x970 mm/madvise.c:1687 [] madvise_do_behavior+0x1ea/0x5c0 mm/madvise.c:1937 [] do_madvise+0x18a/0x22c mm/madvise.c:2030 [] __do_sys_madvise mm/madvise.c:2039 [inline] [] __se_sys_madvise mm/madvise.c:2037 [inline] [] __riscv_sys_madvise+0x88/0xdc mm/madvise.c:2037 [] syscall_handler+0x92/0x114 arch/riscv/include/asm/syscall.h:112 [] do_trap_ecall_u+0x3d2/0x58c arch/riscv/kernel/traps.c:344 [] handle_exception+0x15e/0x16a arch/riscv/kernel/entry.S:232 Code: 7f80 8526 c0ef ec3f 8a2a b791 6097 ff90 80e7 7e60 (9002) 6097 ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: 7f80 flw fs0,56(a5) 2: 8526 mv a0,s1 4: ec3fc0ef jal 0xffffffffffffcec6 8: 8a2a mv s4,a0 a: b791 j 0xffffffffffffff4e c: ff906097 auipc ra,0xff906 10: 7e6080e7 jalr 2022(ra) # 0xff9067f2 * 14: 9002 ebreak <-- trapping instruction 16: 9760 .short 0x6097