syzbot
general protection fault in __blockdev_direct_IO
Status:
public: reported C repro on 2019/08/17 06:06
Reported-by: syzbot+043e9abba0e249556578@syzkaller.appspotmail.com
First crash: 2565d, last: 2502d
Sample crash report:
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] PREEMPT SMP KASAN
Modules linked in:
CPU: 1 PID: 2042 Comm: syz-executor926 Not tainted 4.9.194+ #0
task: 0000000023cfaf09 task.stack: 0000000087292245
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] __read_once_size include/linux/compiler.h:264 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] compound_head include/linux/page-flags.h:145 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] get_page include/linux/mm.h:772 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] submit_page_section fs/direct-io.c:826 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] do_direct_IO fs/direct-io.c:1046 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] do_blockdev_direct_IO fs/direct-io.c:1275 [inline]
RIP: 0010:[<ffffffff815dd965>] [<0000000016d392ad>] __blockdev_direct_IO+0x1c55/0xd370 fs/direct-io.c:1361
RSP: 0018:ffff8801cf4a7310 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: ffffea00073c7c1c RCX: 000000000000000c
RDX: 0000000000000004 RSI: ffffffff815dd948 RDI: 0000000000000020
RBP: ffff8801cf4a7650 R08: 0000000000000000 R09: ffff8801d2137100
R10: ffffed003a426e2d R11: ffff8801d213716f R12: ffffea00073c7c00
R13: ffffea00073c7c00 R14: 0000000000000000 R15: ffff8801cf058000
FS: 0000000000b56880(0000) GS:ffff8801db700000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020011000 CR3: 00000001cf1dd000 CR4: 00000000001606b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Stack:
ffffffff83cc9620 0000000000000003 1ffff1003a0f0df5 ffff8801d0786fa8
ffff8801d0785f00 ffff8801cf4a7440 0005080000000000 0000000000001000
ffff8801cf058079 ffff8801d0785f00 ffff8801da011140 ffff880100000000
Call Trace:
[<0000000025eb89e8>] ext4_direct_IO_write fs/ext4/inode.c:3504 [inline]
[<0000000025eb89e8>] ext4_direct_IO+0xa1d/0x29b0 fs/ext4/inode.c:3660
[<00000000c7aa9f81>] generic_file_direct_write+0x293/0x520 mm/filemap.c:2841
[<000000009483303b>] __generic_file_write_iter+0x20f/0x530 mm/filemap.c:3021
[<00000000893d91da>] ext4_file_write_iter+0x6e7/0xcd0 fs/ext4/file.c:165
[<00000000ff8c3a2f>] vfs_iter_write+0x2e2/0x580 fs/read_write.c:390
[<00000000c7eb4eb8>] iter_file_splice_write+0x5a9/0xb10 fs/splice.c:768
[<000000006918a99a>] do_splice_from fs/splice.c:870 [inline]
[<000000006918a99a>] do_splice fs/splice.c:1166 [inline]
[<000000006918a99a>] SYSC_splice fs/splice.c:1416 [inline]
[<000000006918a99a>] SyS_splice+0xe02/0x14c0 fs/splice.c:1399
[<00000000d3831292>] do_syscall_64+0x1ad/0x5c0 arch/x86/entry/common.c:288
[<000000000a1695ed>] entry_SYSCALL_64_after_swapgs+0x5d/0xdb
Code: b2 81 e6 ff e9 b3 77 00 00 e8 b8 4d d4 ff 48 8b 84 24 f8 00 00 00 48 8d 78 20 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 bc 96 00 00 48 8b 84 24 f8 00 00 00 4c 8b 68
RIP [<0000000016d392ad>] __read_once_size include/linux/compiler.h:264 [inline]
RIP [<0000000016d392ad>] compound_head include/linux/page-flags.h:145 [inline]
RIP [<0000000016d392ad>] get_page include/linux/mm.h:772 [inline]
RIP [<0000000016d392ad>] submit_page_section fs/direct-io.c:826 [inline]
RIP [<0000000016d392ad>] do_direct_IO fs/direct-io.c:1046 [inline]
RIP [<0000000016d392ad>] do_blockdev_direct_IO fs/direct-io.c:1275 [inline]
RIP [<0000000016d392ad>] __blockdev_direct_IO+0x1c55/0xd370 fs/direct-io.c:1361
RSP <ffff8801cf4a7310>
---[ end trace 95cabe7c19a55ca7 ]---
* Struck through repros no longer work on HEAD.