list_add corruption. next->prev should be prev (ffffe8ffffc31ed0), but was ffff88803c98c000. (next=ffff88801faf5400). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:31! Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI CPU: 0 UID: 0 PID: 5128 Comm: udevd Not tainted 6.12.0-rc1-syzkaller-00046-g7ec462100ef9 #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 cf f7 ff 06 90 0f 0b 48 c7 c7 c0 f9 60 8c e8 c0 f7 ff 06 90 0f 0b 48 c7 c7 20 fa 60 8c 4c 89 e6 4c 89 f1 e8 ab f7 ff 06 90 <0f> 0b 48 c7 c7 a0 fa 60 8c 4c 89 f6 4c 89 e1 e8 96 f7 ff 06 90 0f RSP: 0018:ffffc9000bcd6fe8 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff88801faf5408 RCX: 8b85bbf459866d00 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: ffffe8ffffc31ed0 R08: ffffffff81749dec R09: 1ffff9200179ad98 R10: dffffc0000000000 R11: fffff5200179ad99 R12: ffffe8ffffc31ed0 R13: dffffc0000000000 R14: ffff88801faf5400 R15: ffff88801208a000 FS: 00007f3acc30c280(0000) GS:ffff88801fc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000055a8a275a000 CR3: 0000000012f14000 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+0x3d6/0x7f0 mm/swap_state.c:690 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:0x7f3acbec99e4 Code: 48 8d 0d d7 1d 0f 00 ba 96 0e 00 00 48 8d 35 1d b9 0e 00 48 8d 3d 36 c9 0e 00 e8 6c c4 ff ff 48 83 f9 4f 76 09 31 c0 48 89 ef aa eb 5a 48 c7 45 00 00 00 00 00 48 c7 45 08 00 00 00 00 48 c7 RSP: 002b:00007ffcbca7d510 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000021020 RCX: 000000000000ab98 RDX: 0000000000000e61 RSI: 00007f3acbfb52ea RDI: 000055a8a275a000 RBP: 000055a8a2724b70 R08: 000055a8a2724b70 R09: 0000000000004000 R10: 0000000000004011 R11: 0000000000000000 R12: 00007f3acbff1aa0 R13: 000055a8a27b1fe0 R14: 0000000000040028 R15: 000055a8a2549120 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__list_add_valid_or_report+0xd6/0xf0 lib/list_debug.c:29 Code: e8 cf f7 ff 06 90 0f 0b 48 c7 c7 c0 f9 60 8c e8 c0 f7 ff 06 90 0f 0b 48 c7 c7 20 fa 60 8c 4c 89 e6 4c 89 f1 e8 ab f7 ff 06 90 <0f> 0b 48 c7 c7 a0 fa 60 8c 4c 89 f6 4c 89 e1 e8 96 f7 ff 06 90 0f RSP: 0018:ffffc9000bcd6fe8 EFLAGS: 00010246 RAX: 0000000000000075 RBX: ffff88801faf5408 RCX: 8b85bbf459866d00 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: ffffe8ffffc31ed0 R08: ffffffff81749dec R09: 1ffff9200179ad98 R10: dffffc0000000000 R11: fffff5200179ad99 R12: ffffe8ffffc31ed0 R13: dffffc0000000000 R14: ffff88801faf5400 R15: ffff88801208a000 FS: 00007f3acc30c280(0000) GS:ffff88801fc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000055a8a275a000 CR3: 0000000012f14000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400