kasan: CONFIG_KASAN_INLINE enabled sg_write: data in/out 262364/161 bytes for SCSI command 0xff-- guessing data in; program syz-executor5 not setting count and/or reply_len properly BUG: spinlock bad magic on CPU#0, syz-executor5/22608 lock: 0xffff8801cad7a118, .magic: dead4eac, .owner: /-1, .owner_cpu: -1 CPU: 0 PID: 22608 Comm: syz-executor5 Not tainted 4.9.67-gf26d3c7 #106 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ffff8801d956f850 ffffffff81d906e9 ffff8801cad7a118 ffff8801d65b6000 0000000000000019 ffff8801cad7a118 ffffffff8265da40 ffff8801d956f890 ffffffff81245eed ffffffff8122153f b0d9102200000000 ffff880100000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] spin_dump+0x14d/0x280 kernel/locking/spinlock_debug.c:67 [] spin_bug kernel/locking/spinlock_debug.c:75 [inline] [] debug_spin_lock_before kernel/locking/spinlock_debug.c:83 [inline] [] do_raw_spin_lock+0x174/0x1e0 kernel/locking/spinlock_debug.c:112 [] __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:119 [inline] [] _raw_spin_lock_irqsave+0x56/0x70 kernel/locking/spinlock.c:159 [] add_wait_queue+0x3f/0xa0 kernel/sched/wait.c:28 [] __pollwait+0x2b1/0x400 fs/select.c:232 [] poll_wait include/linux/poll.h:45 [inline] [] sg_poll+0xcb/0x340 drivers/scsi/sg.c:1170 [] do_pollfd fs/select.c:781 [inline] [] do_poll fs/select.c:831 [inline] [] do_sys_poll+0x53d/0xcb0 fs/select.c:925 [] SYSC_poll fs/select.c:983 [inline] [] SyS_poll+0x86/0x3f0 fs/select.c:971 [] entry_SYSCALL_64_fastpath+0x23/0xc6 device gre0 entered promiscuous mode kasan: GPF could be caused by NULL-ptr deref or user memory access general protection fault: 0000 [#1] PREEMPT SMP KASAN Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 1 PID: 22614 Comm: syz-executor4 Not tainted 4.9.67-gf26d3c7 #106 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 task: ffff8801a5f63000 task.stack: ffff8801c67d0000 RIP: 0010:[] [] __read_once_size include/linux/compiler.h:243 [inline] RIP: 0010:[] [] atomic_read arch/x86/include/asm/atomic.h:26 [inline] RIP: 0010:[] [] page_ref_count include/linux/page_ref.h:66 [inline] RIP: 0010:[] [] put_page_testzero include/linux/mm.h:450 [inline] RIP: 0010:[] [] __free_pages+0x21/0x80 mm/page_alloc.c:3910 RSP: 0018:ffff8801c67d79b0 EFLAGS: 00010a07 RAX: dffffc0000000000 RBX: dead4ead00000000 RCX: ffffc90002f23000 RDX: 1bd5a9d5a0000003 RSI: 0000000000000002 RDI: dead4ead0000001c RBP: ffff8801c67d79c0 R08: 0000000048000000 R09: 0000000000001e30 R10: 0000000000002100 R11: ffff8801a5f63000 R12: 0000000000000004 R13: 0000000000000020 R14: ffff8801ce350000 R15: dffffc0000000000 FS: 00007f1975cc7700(0000) GS:ffff8801db300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000002026aff8 CR3: 00000001ce188000 CR4: 00000000001406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Stack: 0000000000000001 ffff8801ce350158 ffff8801c67d7a20 ffffffff8265f731 ffff8801ce350170 ffffed0039c6a02b ffffed0039c6a02e ffff8801ce350168 dead4ead00000000 ffff8801ce350140 0000000000000000 0000000000000000 Call Trace: [] sg_remove_scat.isra.20+0x1c1/0x2d0 drivers/scsi/sg.c:1954 [] sg_finish_rem_req+0x2b5/0x340 drivers/scsi/sg.c:1836 [] sg_new_read.isra.21+0x18d/0x3e0 drivers/scsi/sg.c:567 [] sg_read+0x8bd/0x1440 drivers/scsi/sg.c:456 [] do_loop_readv_writev.part.17+0x141/0x1e0 fs/read_write.c:714 [] do_loop_readv_writev fs/read_write.c:880 [inline] [] do_readv_writev+0x520/0x750 fs/read_write.c:874 [] vfs_readv+0x84/0xc0 fs/read_write.c:898 [] do_readv+0xe6/0x250 fs/read_write.c:924 [] SYSC_readv fs/read_write.c:1011 [inline] [] SyS_readv+0x27/0x30 fs/read_write.c:1008 [] entry_SYSCALL_64_fastpath+0x23/0xc6 Code: ff 66 0f 1f 84 00 00 00 00 00 48 b8 00 00 00 00 00 fc ff df 55 48 89 e5 53 48 89 fb 48 83 c7 1c 48 89 fa 48 83 ec 08 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 3d RIP [] __read_once_size include/linux/compiler.h:243 [inline] RIP [] atomic_read arch/x86/include/asm/atomic.h:26 [inline] RIP [] page_ref_count include/linux/page_ref.h:66 [inline] RIP [] put_page_testzero include/linux/mm.h:450 [inline] RIP [] __free_pages+0x21/0x80 mm/page_alloc.c:3910 RSP ---[ end trace a6bb53c84326cbbc ]---