list_add corruption. next->prev should be prev (ffffe8ffffc31ed0), but was ffff88803c76e000. (next=ffff88801ab63400). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:31! Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI CPU: 0 UID: 0 PID: 4584 Comm: klogd Not tainted 6.12.0-rc1-syzkaller #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:__list_add_valid_or_report+0xd6/0xf0 lib/list_debug.c:29 Code: e8 6f 08 00 07 90 0f 0b 48 c7 c7 00 f9 60 8c e8 60 08 00 07 90 0f 0b 48 c7 c7 60 f9 60 8c 4c 89 e6 4c 89 f1 e8 4b 08 00 07 90 <0f> 0b 48 c7 c7 e0 f9 60 8c 4c 89 f6 4c 89 e1 e8 36 08 00 07 90 0f RSP: 0018:ffffc90001eb6fe8 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff88801ab63408 RCX: 9a06a3deb1d04200 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: ffffe8ffffc31ed0 R08: ffffffff81749dec R09: fffffbfff1cf9fd8 R10: dffffc0000000000 R11: fffffbfff1cf9fd8 R12: ffffe8ffffc31ed0 R13: dffffc0000000000 R14: ffff88801ab63400 R15: ffff88801e2d4000 FS: 00007fcec36a9500(0000) GS:ffff88801fc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000020119000 CR3: 0000000011fa8000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 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+0x924/0xc50 mm/z3fold.c:772 zswap_entry_free+0x2f6/0x440 mm/zswap.c:799 zswap_load+0x386/0x8f0 mm/zswap.c:1584 swap_read_folio+0x8c0/0x20b0 mm/page_io.c:618 swap_cluster_readahead+0x707/0x7f0 mm/swap_state.c:706 swapin_readahead+0x1bb/0xdf0 mm/swap_state.c:882 do_swap_page+0x584/0x7b30 mm/memory.c:4324 handle_pte_fault+0x61d/0x6800 mm/memory.c:5754 __handle_mm_fault mm/memory.c:5894 [inline] handle_mm_fault+0x1106/0x1bb0 mm/memory.c:6062 do_user_addr_fault arch/x86/mm/fault.c:1338 [inline] handle_page_fault arch/x86/mm/fault.c:1481 [inline] exc_page_fault+0x459/0x8c0 arch/x86/mm/fault.c:1539 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623 RIP: 0033:0x7fcec37dff2a Code: 83 f8 da 8b 7c 24 04 48 8b 74 24 08 74 cb 48 8b 15 f3 7e 0f 00 f7 d8 64 89 02 48 83 c8 ff 48 83 c4 18 c3 48 8b 05 96 7f 0f 00 <48> 8b 80 f8 02 00 00 48 85 c0 74 1c 51 ff d0 85 c0 75 04 31 c0 eb RSP: 002b:00007ffc1a2df388 EFLAGS: 00010206 RAX: 00007fcec39e0a80 RBX: 0000000000000002 RCX: 0000000000000001 RDX: 0000000000000000 RSI: 00007ffc1a2df3e0 RDI: 0000000000000005 RBP: 000055d1f8913910 R08: 0000000000000001 R09: 00007ffc1a2dee88 R10: 000000000000020f R11: 0000000000000000 R12: 0000000000000006 R13: 00007fcec3999212 R14: 00007ffc1a2df488 R15: 0000000000000000 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__list_add_valid_or_report+0xd6/0xf0 lib/list_debug.c:29 Code: e8 6f 08 00 07 90 0f 0b 48 c7 c7 00 f9 60 8c e8 60 08 00 07 90 0f 0b 48 c7 c7 60 f9 60 8c 4c 89 e6 4c 89 f1 e8 4b 08 00 07 90 <0f> 0b 48 c7 c7 e0 f9 60 8c 4c 89 f6 4c 89 e1 e8 36 08 00 07 90 0f RSP: 0018:ffffc90001eb6fe8 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff88801ab63408 RCX: 9a06a3deb1d04200 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: ffffe8ffffc31ed0 R08: ffffffff81749dec R09: fffffbfff1cf9fd8 R10: dffffc0000000000 R11: fffffbfff1cf9fd8 R12: ffffe8ffffc31ed0 R13: dffffc0000000000 R14: ffff88801ab63400 R15: ffff88801e2d4000 FS: 00007fcec36a9500(0000) GS:ffff88801fc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000020119000 CR3: 0000000011fa8000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400