list_add corruption. prev->next should be next (ffffffff8a1dca60), but was ffff8881cac70b70. (prev=ffff8881ce299d70). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:28! invalid opcode: 0000 [#1] PREEMPT SMP KASAN CPU: 0 PID: 13395 Comm: syz-executor0 Not tainted 4.20.0-rc6-next-20181210+ #164 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:__list_add_valid.cold.2+0x23/0x2a lib/list_debug.c:26 Code: e8 00 1f d2 fd 0f 0b 48 89 d9 48 c7 c7 20 e6 80 88 e8 ef 1e d2 fd 0f 0b 48 89 f1 48 c7 c7 a0 e6 80 88 48 89 de e8 db 1e d2 fd <0f> 0b 90 90 90 90 90 55 48 89 e5 41 57 41 56 49 be 00 00 00 00 00 RSP: 0018:ffff8881dac06ce0 EFLAGS: 00010286 RAX: 0000000000000075 RBX: ffffffff8a1dca60 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff816621c5 RDI: 0000000000000005 RBP: ffff8881dac06cf8 R08: ffff888183a001c0 R09: ffffed103b585020 R10: ffffed103b585020 R11: ffff8881dac28107 R12: ffff8881d37d0bb0 R13: ffff8881d37d0940 R14: ffffffff8a1dc820 R15: ffffffff8a1dcab0 FS: 00007f2fd845a700(0000) GS:ffff8881dac00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000000072c000 CR3: 00000001ce96d000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __list_add include/linux/list.h:60 [inline] list_add_tail include/linux/list.h:93 [inline] neigh_alloc net/core/neighbour.c:395 [inline] ___neigh_create+0x14b7/0x2600 net/core/neighbour.c:553 __neigh_create+0x30/0x40 net/core/neighbour.c:640 ip6_finish_output2+0xa64/0x2940 net/ipv6/ip6_output.c:117 ip6_finish_output+0x58c/0xc60 net/ipv6/ip6_output.c:154 NF_HOOK_COND include/linux/netfilter.h:278 [inline] ip6_output+0x232/0x9d0 net/ipv6/ip6_output.c:171 dst_output include/net/dst.h:444 [inline] NF_HOOK include/linux/netfilter.h:289 [inline] ndisc_send_skb+0x1005/0x1560 net/ipv6/ndisc.c:491 ndisc_send_rs+0x134/0x6e0 net/ipv6/ndisc.c:685 addrconf_rs_timer+0x314/0x690 net/ipv6/addrconf.c:3840 call_timer_fn+0x272/0x920 kernel/time/timer.c:1325 expire_timers kernel/time/timer.c:1362 [inline] __run_timers+0x7e5/0xc70 kernel/time/timer.c:1681 run_timer_softirq+0x52/0xb0 kernel/time/timer.c:1694 __do_softirq+0x308/0xb7e kernel/softirq.c:292 invoke_softirq kernel/softirq.c:373 [inline] irq_exit+0x17f/0x1c0 kernel/softirq.c:413 exiting_irq arch/x86/include/asm/apic.h:536 [inline] smp_apic_timer_interrupt+0x1cb/0x760 arch/x86/kernel/apic/apic.c:1061 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:807 RIP: 0010:arch_local_irq_enable arch/x86/include/asm/paravirt.h:776 [inline] RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:168 [inline] RIP: 0010:_raw_spin_unlock_irq+0x56/0x80 kernel/locking/spinlock.c:192 Code: 72 89 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 75 32 48 83 3d 53 c3 8e 01 00 74 1f fb 66 0f 1f 44 00 00 01 00 00 00 e8 a0 71 72 f9 65 8b 05 49 70 1e 78 85 c0 74 05 5b RSP: 0018:ffff8881b6fc7188 EFLAGS: 00000282 ORIG_RAX: ffffffffffffff13 RAX: dffffc0000000000 RBX: ffff8881bda63000 RCX: 1ffff11030740151 RDX: 1ffffffff12e4818 RSI: 0000000000000000 RDI: ffffffff897240c0 RBP: ffff8881b6fc7190 R08: ffff888183a00a88 R09: 0000000000000006 R10: 0000000000000000 R11: ffff888183a001c0 R12: ffff8881bda63000 R13: dffffc0000000000 R14: 0000000000000000 R15: ffff8881b6fc7830 spin_unlock_irq include/linux/spinlock.h:379 [inline] shmem_getpage_gfp+0x15e4/0x31c0 mm/shmem.c:1836 shmem_getpage mm/shmem.c:138 [inline] shmem_write_begin+0x10a/0x1e0 mm/shmem.c:2428 generic_perform_write+0x3aa/0x6a0 mm/filemap.c:3201 __generic_file_write_iter+0x26e/0x630 mm/filemap.c:3326 generic_file_write_iter+0x34d/0x6b0 mm/filemap.c:3354 call_write_iter include/linux/fs.h:1863 [inline] new_sync_write fs/read_write.c:474 [inline] __vfs_write+0x72c/0xab0 fs/read_write.c:487 vfs_write+0x1fc/0x580 fs/read_write.c:549 ksys_pwrite64+0x181/0x1b0 fs/read_write.c:652 __do_sys_pwrite64 fs/read_write.c:662 [inline] __se_sys_pwrite64 fs/read_write.c:659 [inline] __x64_sys_pwrite64+0x97/0xf0 fs/read_write.c:659 do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x411317 Code: 12 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 51 17 00 00 c3 48 83 ec 08 e8 27 fa ff ff 48 89 04 24 49 89 ca b8 12 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 6d fa ff ff 48 89 d0 48 83 c4 08 48 3d 01 RSP: 002b:00007f2fd8459a80 EFLAGS: 00000293 ORIG_RAX: 0000000000000012 RAX: ffffffffffffffda RBX: 0000000020000450 RCX: 0000000000411317 RDX: 0000000008100000 RSI: 0000000020000380 RDI: 0000000000000005 RBP: 0000000000000000 R08: 0000000020018440 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000005 R13: 0000000000001000 R14: 00000000004d9c28 R15: 00000000ffffffff Modules linked in: ---[ end trace 74c4dead6a98be03 ]--- RIP: 0010:__list_add_valid.cold.2+0x23/0x2a lib/list_debug.c:26 Code: e8 00 1f d2 fd 0f 0b 48 89 d9 48 c7 c7 20 e6 80 88 e8 ef 1e d2 fd 0f 0b 48 89 f1 48 c7 c7 a0 e6 80 88 48 89 de e8 db 1e d2 fd <0f> 0b 90 90 90 90 90 55 48 89 e5 41 57 41 56 49 be 00 00 00 00 00 RSP: 0018:ffff8881dac06ce0 EFLAGS: 00010286 RAX: 0000000000000075 RBX: ffffffff8a1dca60 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff816621c5 RDI: 0000000000000005 RBP: ffff8881dac06cf8 R08: ffff888183a001c0 R09: ffffed103b585020 R10: ffffed103b585020 R11: ffff8881dac28107 R12: ffff8881d37d0bb0 R13: ffff8881d37d0940 R14: ffffffff8a1dc820 R15: ffffffff8a1dcab0 FS: 00007f2fd845a700(0000) GS:ffff8881dac00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000000072c000 CR3: 00000001ce96d000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400