slab kmalloc-96 start ffff888034d64800 pointer offset 0 size 96 list_add corruption. next->prev should be prev (ffffe8ffffc20db0), but was ffffffff84ba0750. (next=ffff888034d64800). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:31! Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN PTI CPU: 0 UID: 0 PID: 8069 Comm: syz.0.505 Not tainted 6.14.0-rc3-syzkaller-00137-g27eddbf34490 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 RIP: 0010:__list_add_valid_or_report+0xf3/0x130 lib/list_debug.c:29 Code: eb 0a fd 42 80 7c 2d 00 00 74 08 48 89 df e8 84 db 2c fd 49 8b 56 08 48 c7 c7 c0 ef 80 8c 4c 89 e6 4c 89 f1 e8 4e ea 2a fc 90 <0f> 0b 4c 89 e7 e8 d3 ea 0a fd 42 80 3c 2b 00 74 08 4c 89 e7 e8 54 RSP: 0000:ffffc900033556a0 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff888034d64808 RCX: 50ae51052cdc9b00 RDX: ffffc90004ba2000 RSI: 0000000000020373 RDI: 0000000000020374 RBP: 1ffff110069ac901 R08: ffffffff81a1108c R09: fffffbfff1d3a614 R10: dffffc0000000000 R11: fffffbfff1d3a614 R12: ffffe8ffffc20db0 R13: dffffc0000000000 R14: ffff888034d64800 R15: ffff888031e76000 FS: 0000000000000000(0000) GS:ffff8880b8600000(0063) knlGS:00000000f5106b40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 0000000000000000 CR3: 000000007e0fc000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 000000000000000e DR6: 00000000ffff0ff0 DR7: 0000000000000400 Call Trace: __list_add_valid include/linux/list.h:88 [inline] __list_add include/linux/list.h:150 [inline] list_add include/linux/list.h:169 [inline] add_to_unbuddied+0x2e4/0x4d0 mm/z3fold.c:550 do_compact_page+0x5da/0xd30 mm/z3fold.c:772 zswap_entry_free+0x2f6/0x440 mm/zswap.c:806 zswap_load+0x364/0x4a0 mm/zswap.c:1663 swap_read_folio+0x9b4/0x2690 mm/page_io.c:641 swap_cluster_readahead+0x3cf/0x710 mm/swap_state.c:689 swapin_readahead+0x1ba/0xd30 mm/swap_state.c:881 do_swap_page+0x5c4/0x5c40 mm/memory.c:4422 handle_pte_fault mm/memory.c:5903 [inline] __handle_mm_fault+0x13dd/0x70f0 mm/memory.c:6043 handle_mm_fault+0x3e5/0x8d0 mm/memory.c:6212 faultin_page mm/gup.c:1196 [inline] __get_user_pages+0x1a92/0x4140 mm/gup.c:1491 __get_user_pages_locked mm/gup.c:1757 [inline] get_user_pages_unlocked+0x2a8/0x9d0 mm/gup.c:2728 hva_to_pfn_slow virt/kvm/kvm_main.c:2822 [inline] hva_to_pfn+0x445/0xfe0 virt/kvm/kvm_main.c:2918 kvm_follow_pfn virt/kvm/kvm_main.c:2965 [inline] __kvm_faultin_pfn+0x497/0x580 virt/kvm/kvm_main.c:2986 __kvm_mmu_faultin_pfn arch/x86/kvm/mmu/mmu.c:4354 [inline] kvm_mmu_faultin_pfn+0x793/0x16d0 arch/x86/kvm/mmu/mmu.c:4478 kvm_tdp_mmu_page_fault arch/x86/kvm/mmu/mmu.c:4646 [inline] kvm_tdp_page_fault+0x29a/0x3a0 arch/x86/kvm/mmu/mmu.c:4682 kvm_mmu_do_page_fault+0x577/0xb40 arch/x86/kvm/mmu/mmu_internal.h:387 kvm_mmu_page_fault+0x2d7/0xc50 arch/x86/kvm/mmu/mmu.c:6094 __vmx_handle_exit arch/x86/kvm/vmx/vmx.c:6629 [inline] vmx_handle_exit+0xfd8/0x1a10 arch/x86/kvm/vmx/vmx.c:6646 vcpu_enter_guest arch/x86/kvm/x86.c:11092 [inline] vcpu_run+0x6e9e/0x8a90 arch/x86/kvm/x86.c:11253 kvm_arch_vcpu_ioctl_run+0xa68/0x1940 arch/x86/kvm/x86.c:11575 kvm_vcpu_ioctl+0x996/0x1020 virt/kvm/kvm_main.c:4378 kvm_vcpu_compat_ioctl+0x23f/0x450 virt/kvm/kvm_main.c:4593 __do_compat_sys_ioctl fs/ioctl.c:1004 [inline] __se_compat_sys_ioctl+0x502/0xc10 fs/ioctl.c:947 do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline] __do_fast_syscall_32+0xb4/0x110 arch/x86/entry/common.c:386 do_fast_syscall_32+0x34/0x80 arch/x86/entry/common.c:411 entry_SYSENTER_compat_after_hwframe+0x84/0x8e RIP: 0023:0xf7fe2579 Code: b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 RSP: 002b:00000000f510655c EFLAGS: 00000206 ORIG_RAX: 0000000000000036 RAX: ffffffffffffffda RBX: 0000000000000007 RCX: 000000000000ae80 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__list_add_valid_or_report+0xf3/0x130 lib/list_debug.c:29 Code: eb 0a fd 42 80 7c 2d 00 00 74 08 48 89 df e8 84 db 2c fd 49 8b 56 08 48 c7 c7 c0 ef 80 8c 4c 89 e6 4c 89 f1 e8 4e ea 2a fc 90 <0f> 0b 4c 89 e7 e8 d3 ea 0a fd 42 80 3c 2b 00 74 08 4c 89 e7 e8 54 RSP: 0000:ffffc900033556a0 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff888034d64808 RCX: 50ae51052cdc9b00 RDX: ffffc90004ba2000 RSI: 0000000000020373 RDI: 0000000000020374 RBP: 1ffff110069ac901 R08: ffffffff81a1108c R09: fffffbfff1d3a614 R10: dffffc0000000000 R11: fffffbfff1d3a614 R12: ffffe8ffffc20db0 R13: dffffc0000000000 R14: ffff888034d64800 R15: ffff888031e76000 FS: 0000000000000000(0000) GS:ffff8880b8600000(0063) knlGS:00000000f5106b40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 0000000000000000 CR3: 000000007e0fc000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 000000000000000e DR6: 00000000ffff0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess), 2 bytes skipped: 0: 10 06 adc %al,(%rsi) 2: 03 74 b4 01 add 0x1(%rsp,%rsi,4),%esi 6: 10 07 adc %al,(%rdi) 8: 03 74 b0 01 add 0x1(%rax,%rsi,4),%esi c: 10 08 adc %cl,(%rax) e: 03 74 d8 01 add 0x1(%rax,%rbx,8),%esi 1e: 00 51 52 add %dl,0x52(%rcx) 21: 55 push %rbp 22: 89 e5 mov %esp,%ebp 24: 0f 34 sysenter 26: cd 80 int $0x80 * 28: 5d pop %rbp <-- trapping instruction 29: 5a pop %rdx 2a: 59 pop %rcx 2b: c3 ret 2c: 90 nop 2d: 90 nop 2e: 90 nop 2f: 90 nop 30: 90 nop 31: 90 nop 32: 90 nop 33: 90 nop 34: 90 nop 35: 90 nop 36: 90 nop 37: 90 nop 38: 90 nop 39: 90 nop 3a: 90 nop 3b: 90 nop 3c: 90 nop 3d: 90 nop