list_add corruption. prev->next should be next (ffff88803222a000), but was ffff8881068d9000. (prev=ffffffff8e5a5760). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:30! invalid opcode: 0000 [#1] PREEMPT SMP KASAN CPU: 3 PID: 2295 Comm: syz-executor279 Not tainted 6.4.0-rc5-syzkaller-00016-ga4d7d7011219 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.14.0-2 04/01/2014 RIP: 0010:__list_add_valid+0xb9/0x100 lib/list_debug.c:30 Code: e8 0c fd 50 fd 0f 0b 4c 89 e1 48 c7 c7 80 f1 a6 8a e8 fb fc 50 fd 0f 0b 48 89 f1 48 c7 c7 00 f2 a6 8a 4c 89 e6 e8 e7 fc 50 fd <0f> 0b 48 89 f2 4c 89 e1 48 89 ee 48 c7 c7 80 f2 a6 8a e8 d0 fc 50 RSP: 0018:ffffc90020d6f810 EFLAGS: 00010286 RAX: 0000000000000075 RBX: ffff88801fabc000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8167dcbc RDI: 0000000000000005 RBP: ffff88801fabc000 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000080000000 R11: 6464615f7473696c R12: ffff88803222a000 R13: ffff88803222a000 R14: 0000000000000000 R15: ffff88801f5c5140 FS: 00007f9b2f9b5700(0000) GS:ffff88806b900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fff4c443878 CR3: 0000000024747000 CR4: 0000000000350ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __list_add include/linux/list.h:69 [inline] list_add include/linux/list.h:88 [inline] nfc_llcp_register_device+0x7a8/0x9e0 net/nfc/llcp_core.c:1604 nfc_register_device+0x70/0x3c0 net/nfc/core.c:1124 nci_register_device+0x7cb/0xb50 net/nfc/nci/core.c:1257 virtual_ncidev_open+0x14f/0x230 drivers/nfc/virtual_ncidev.c:148 misc_open+0x37a/0x4a0 drivers/char/misc.c:165 chrdev_open+0x26a/0x770 fs/char_dev.c:414 do_dentry_open+0x6cc/0x13f0 fs/open.c:920 do_open fs/namei.c:3636 [inline] path_openat+0x1baa/0x2750 fs/namei.c:3791 do_filp_open+0x1ba/0x410 fs/namei.c:3818 do_sys_openat2+0x16d/0x4c0 fs/open.c:1356 do_sys_open fs/open.c:1372 [inline] __do_sys_openat fs/open.c:1388 [inline] __se_sys_openat fs/open.c:1383 [inline] __x64_sys_openat+0x143/0x1f0 fs/open.c:1383 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x39/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7f9b2fa0be49 Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 31 18 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f9b2f9b5308 EFLAGS: 00000246 ORIG_RAX: 0000000000000101 RAX: ffffffffffffffda RBX: 00007f9b2fa8d488 RCX: 00007f9b2fa0be49 RDX: 0000000000000002 RSI: 0000000020000200 RDI: ffffffffffffff9c RBP: 00007f9b2fa8d480 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f9b2fa8d48c R13: 00007f9b2fa5a138 R14: 0030656c69662f2e R15: 0000000000022000 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__list_add_valid+0xb9/0x100 lib/list_debug.c:30 Code: e8 0c fd 50 fd 0f 0b 4c 89 e1 48 c7 c7 80 f1 a6 8a e8 fb fc 50 fd 0f 0b 48 89 f1 48 c7 c7 00 f2 a6 8a 4c 89 e6 e8 e7 fc 50 fd <0f> 0b 48 89 f2 4c 89 e1 48 89 ee 48 c7 c7 80 f2 a6 8a e8 d0 fc 50 RSP: 0018:ffffc90020d6f810 EFLAGS: 00010286 RAX: 0000000000000075 RBX: ffff88801fabc000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8167dcbc RDI: 0000000000000005 RBP: ffff88801fabc000 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000080000000 R11: 6464615f7473696c R12: ffff88803222a000 R13: ffff88803222a000 R14: 0000000000000000 R15: ffff88801f5c5140 FS: 00007f9b2f9b5700(0000) GS:ffff88806b900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fff4c443878 CR3: 0000000024747000 CR4: 0000000000350ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400