syzbot


general protection fault in dqput

Status: fixed on 2021/01/26 16:42
Reported-by: syzbot+c914f02468af7591b8b6@syzkaller.appspotmail.com
Fix commit: 7bae84821b47 quota: Sanity-check quota file headers on load
First crash: 558d, last: 544d

Fix bisection: fixed by (bisect log) :
commit 7bae84821b47e2ffa87a7afcb6891dd7e61c65ef
Author: Jan Kara <jack@suse.cz>
Date: Mon Nov 2 15:16:29 2020 +0000

  quota: Sanity-check quota file headers on load

similar bugs (2):
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
android-54 general protection fault in dqput C 2 545d 565d 0/2 upstream: reported C repro on 2020/12/06 06:39
linux-4.14 general protection fault in dqput C done 1 544d 544d 1/1 fixed on 2021/01/27 05:38

Sample crash report:
EXT4-fs error (device loop0): ext4_mb_generate_buddy:744: group 0, block bitmap and bg descriptor inconsistent: 32768 vs 25 free clusters
Quota error (device loop0): write_blk: dquota write failed
Quota error (device loop0): qtree_write_dquot: Error -28 occurred while creating quota
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
CPU: 0 PID: 8118 Comm: syz-executor257 Not tainted 4.19.163-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:dqput.part.0+0x1e5/0x830 fs/quota/dquot.c:779
Code: 83 00 01 00 00 48 89 44 24 08 48 c1 e8 03 80 3c 28 00 0f 85 f6 04 00 00 4c 8b bb 00 01 00 00 49 8d 7f 38 48 89 fa 48 c1 ea 03 <80> 3c 2a 00 0f 85 f6 04 00 00 4d 8b 7f 38 4c 89 fa 48 c1 ea 03 80
RSP: 0018:ffff8880951178a0 EFLAGS: 00010203
RAX: 1ffffffff132a649 RBX: ffffffff8995314f RCX: 0000000000000000
RDX: 04af0d8dae81adba RSI: 0000000000000004 RDI: 25786c6d740d6dd7
RBP: dffffc0000000000 R08: 0000000000000000 R09: fffffbfff13c2500
R10: ffffffff89e12803 R11: 0000000000000001 R12: ffffffff89953247
R13: 000000000000000a R14: fffffbfff132a648 R15: 25786c6d740d6d9f
FS:  0000000001bdf880(0000) GS:ffff8880ba000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000006d00a0 CR3: 00000000a0c98000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 dqput fs/quota/dquot.c:752 [inline]
 dqput_all fs/quota/dquot.c:391 [inline]
 __dquot_drop+0x19c/0x270 fs/quota/dquot.c:1568
 dquot_drop fs/quota/dquot.c:1593 [inline]
 dquot_drop+0x14b/0x1a0 fs/quota/dquot.c:1571
 ext4_clear_inode+0x31/0x1d0 fs/ext4/super.c:1180
 ext4_evict_inode+0x25b/0x1780 fs/ext4/inode.c:348
 evict+0x2ed/0x760 fs/inode.c:559
 dispose_list+0x124/0x1f0 fs/inode.c:594
 evict_inodes+0x341/0x430 fs/inode.c:644
 generic_shutdown_super+0xb3/0x370 fs/super.c:448
 kill_block_super+0x97/0xf0 fs/super.c:1185
 deactivate_locked_super+0x94/0x160 fs/super.c:329
 deactivate_super+0x174/0x1a0 fs/super.c:360
 cleanup_mnt+0x1a8/0x290 fs/namespace.c:1098
 task_work_run+0x148/0x1c0 kernel/task_work.c:113
 exit_task_work include/linux/task_work.h:22 [inline]
 do_exit+0xbed/0x2be0 kernel/exit.c:890
 do_group_exit+0x125/0x310 kernel/exit.c:993
 __do_sys_exit_group kernel/exit.c:1004 [inline]
 __se_sys_exit_group kernel/exit.c:1002 [inline]
 __x64_sys_exit_group+0x3a/0x50 kernel/exit.c:1002
 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x443828
Code: Bad RIP value.
RSP: 002b:00007ffce6a8e908 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 0000000000443828
RDX: 0000000000000001 RSI: 000000000000003c RDI: 0000000000000001
RBP: 00000000004c3d10 R08: 00000000000000e7 R09: ffffffffffffffd0
R10: 00007ffce6a8e800 R11: 0000000000000246 R12: 0000000000000001
R13: 00000000006d6180 R14: 0000000000000000 R15: 0000000000000000
Modules linked in:
---[ end trace d1cbd3df0a6c51d5 ]---
RIP: 0010:dqput.part.0+0x1e5/0x830 fs/quota/dquot.c:779
Code: 83 00 01 00 00 48 89 44 24 08 48 c1 e8 03 80 3c 28 00 0f 85 f6 04 00 00 4c 8b bb 00 01 00 00 49 8d 7f 38 48 89 fa 48 c1 ea 03 <80> 3c 2a 00 0f 85 f6 04 00 00 4d 8b 7f 38 4c 89 fa 48 c1 ea 03 80
RSP: 0018:ffff8880951178a0 EFLAGS: 00010203
RAX: 1ffffffff132a649 RBX: ffffffff8995314f RCX: 0000000000000000
RDX: 04af0d8dae81adba RSI: 0000000000000004 RDI: 25786c6d740d6dd7
RBP: dffffc0000000000 R08: 0000000000000000 R09: fffffbfff13c2500
R10: ffffffff89e12803 R11: 0000000000000001 R12: ffffffff89953247
R13: 000000000000000a R14: fffffbfff132a648 R15: 25786c6d740d6d9f
FS:  0000000001bdf880(0000) GS:ffff8880ba000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000004437fe CR3: 00000000a0c98000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (2):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci2-linux-4-19 2020/12/27 03:14 linux-4.19.y 13d2ce42de8c 821e0b09 .config log report syz C
ci2-linux-4-19 2020/12/13 15:09 linux-4.19.y 13d2ce42de8c bca53db9 .config log report syz C