floppy1: FDC access conflict! general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 2 PID: 9 Comm: kworker/u16:0 Not tainted 6.1.0-rc8-syzkaller-17162-g8ed710da2873 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.14.0-2 04/01/2014 Workqueue: floppy floppy_work_workfn RIP: 0010:start_motor+0x3a/0x3f0 drivers/block/floppy.c:1905 Code: 08 e8 9a 1f 88 fc 48 8b 1d 53 a3 d3 0c 48 b8 00 00 00 00 00 fc ff df 0f b6 2d a2 8d d3 0c 48 89 da 48 c1 ea 03 89 e9 41 89 ed <0f> b6 04 02 83 e1 03 41 83 e5 03 84 c0 74 08 3c 03 0f 8e be 02 00 RSP: 0018:ffffc900005cfc98 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000001 RDX: 0000000000000000 RSI: ffffffff84f72106 RDI: ffffffff84f73ae0 RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff84f73ae0 R13: 0000000000000001 R14: ffff88804030b400 R15: ffff888012071800 FS: 0000000000000000(0000) GS:ffff88802c800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7eaa84b718 CR3: 0000000000743000 CR4: 0000000000150ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: floppy_ready+0x87/0x1940 drivers/block/floppy.c:1932 process_one_work+0x9bf/0x1710 kernel/workqueue.c:2289 worker_thread+0x669/0x1090 kernel/workqueue.c:2436 kthread+0x2e8/0x3a0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:start_motor+0x3a/0x3f0 drivers/block/floppy.c:1905 Code: 08 e8 9a 1f 88 fc 48 8b 1d 53 a3 d3 0c 48 b8 00 00 00 00 00 fc ff df 0f b6 2d a2 8d d3 0c 48 89 da 48 c1 ea 03 89 e9 41 89 ed <0f> b6 04 02 83 e1 03 41 83 e5 03 84 c0 74 08 3c 03 0f 8e be 02 00 RSP: 0018:ffffc900005cfc98 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000001 RDX: 0000000000000000 RSI: ffffffff84f72106 RDI: ffffffff84f73ae0 RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff84f73ae0 R13: 0000000000000001 R14: ffff88804030b400 R15: ffff888012071800 FS: 0000000000000000(0000) GS:ffff88802c900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00005555571c7708 CR3: 000000001ef5c000 CR4: 0000000000150ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: e8 9a 1f 88 fc callq 0xfc881f9f 5: 48 8b 1d 53 a3 d3 0c mov 0xcd3a353(%rip),%rbx # 0xcd3a35f c: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 13: fc ff df 16: 0f b6 2d a2 8d d3 0c movzbl 0xcd38da2(%rip),%ebp # 0xcd38dbf 1d: 48 89 da mov %rbx,%rdx 20: 48 c1 ea 03 shr $0x3,%rdx 24: 89 e9 mov %ebp,%ecx 26: 41 89 ed mov %ebp,%r13d * 29: 0f b6 04 02 movzbl (%rdx,%rax,1),%eax <-- trapping instruction 2d: 83 e1 03 and $0x3,%ecx 30: 41 83 e5 03 and $0x3,%r13d 34: 84 c0 test %al,%al 36: 74 08 je 0x40 38: 3c 03 cmp $0x3,%al 3a: 0f .byte 0xf 3b: 8e .byte 0x8e 3c: be .byte 0xbe 3d: 02 00 add (%rax),%al