syzbot


general protection fault in gfs2_evict_inode (2)

Status: fixed on 2023/07/01 16:05
Subsystems: gfs2
[Documentation on labels]
Reported-by: syzbot+8a5fc6416c175cecea34@syzkaller.appspotmail.com
Fix commit: 504a10d9e46b gfs2: Don't deref jdesc in evict
First crash: 894d, last: 569d
Cause bisection: failed (error log, bisect log)
  
Fix bisection: fixed by (bisect log) :
commit 504a10d9e46bc37b23d0a1ae2f28973c8516e636
Author: Bob Peterson <rpeterso@redhat.com>
Date: Fri Apr 28 16:07:46 2023 +0000

  gfs2: Don't deref jdesc in evict

  
Discussions (4)
Title Replies (including bot) Last reply
[syzbot] general protection fault in gfs2_evict_inode (2) 1 (4) 2023/06/14 08:50
[syzbot] Monthly gfs2 report (Apr 2023) 0 (1) 2023/04/30 08:01
[syzbot] Monthly cluster report 1 (2) 2023/03/30 10:09
BUG: unable to handle kernel NULL pointer dereference in gfs2_evict_inode 6 (6) 2022/11/22 07:12
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 general protection fault in gfs2_evict_inode gfs2 C error 5 685d 701d 0/1 upstream: reported C repro on 2022/12/31 21:41
upstream general protection fault in gfs2_evict_inode gfs2 2 1122d 1094d 0/28 auto-closed as invalid on 2022/03/06 05:03
linux-5.15 general protection fault in gfs2_evict_inode C done 4 547d 598d 3/3 fixed on 2023/07/07 16:05
linux-6.1 BUG: unable to handle kernel paging request in gfs2_evict_inode origin:lts-only C inconclusive 3 548d 577d 0/3 upstream: reported C repro on 2023/05/05 09:09

Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000000011: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000088-0x000000000000008f]
CPU: 0 PID: 5062 Comm: syz-executor294 Not tainted 6.2.0-rc4-syzkaller-00467-gf67144022885 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/12/2023
RIP: 0010:evict_linked_inode fs/gfs2/super.c:1349 [inline]
RIP: 0010:gfs2_evict_inode+0xf0e/0x1c50 fs/gfs2/super.c:1399
Code: 03 80 3c 02 00 0f 85 28 0d 00 00 48 8b 9d 00 09 00 00 48 b8 00 00 00 00 00 fc ff df 48 8d bb 8c 00 00 00 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 f8
RSP: 0018:ffffc90003eff8b8 EFLAGS: 00010217
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000011 RSI: ffffffff8394e5fd RDI: 000000000000008c
RBP: ffff888079524000 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
R13: ffff888076fe8d98 R14: ffff888076fe9228 R15: ffff888076fe8d70
FS:  0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f02355d7140 CR3: 000000000c48e000 CR4: 0000000000350ef0
Call Trace:
 <TASK>
 evict+0x2ed/0x6b0 fs/inode.c:664
 iput_final fs/inode.c:1747 [inline]
 iput.part.0+0x59b/0x880 fs/inode.c:1773
 iput+0x5c/0x80 fs/inode.c:1763
 gfs2_jindex_free+0x391/0x560 fs/gfs2/super.c:75
 gfs2_put_super+0x48f/0x670 fs/gfs2/super.c:625
 generic_shutdown_super+0x158/0x410 fs/super.c:492
 kill_block_super+0x9b/0xf0 fs/super.c:1386
 gfs2_kill_sb+0x108/0x170 fs/gfs2/ops_fstype.c:1738
 deactivate_locked_super+0x98/0x160 fs/super.c:332
 deactivate_super+0xb1/0xd0 fs/super.c:363
 cleanup_mnt+0x2ae/0x3d0 fs/namespace.c:1291
 task_work_run+0x16f/0x270 kernel/task_work.c:179
 exit_task_work include/linux/task_work.h:38 [inline]
 do_exit+0xaa8/0x2950 kernel/exit.c:867
 do_group_exit+0xd4/0x2a0 kernel/exit.c:1012
 __do_sys_exit_group kernel/exit.c:1023 [inline]
 __se_sys_exit_group kernel/exit.c:1021 [inline]
 __x64_sys_exit_group+0x3e/0x50 kernel/exit.c:1021
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x39/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f023553d999
Code: Unable to access opcode bytes at 0x7f023553d96f.
RSP: 002b:00007fff98fbb388 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 00007f02355d9330 RCX: 00007f023553d999
RDX: 000000000000003c RSI: 00000000000000e7 RDI: 0000000000000001
RBP: 0000000000000001 R08: ffffffffffffffc0 R09: 00000000000262db
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f02355d9330
R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000001
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:evict_linked_inode fs/gfs2/super.c:1349 [inline]
RIP: 0010:gfs2_evict_inode+0xf0e/0x1c50 fs/gfs2/super.c:1399
Code: 03 80 3c 02 00 0f 85 28 0d 00 00 48 8b 9d 00 09 00 00 48 b8 00 00 00 00 00 fc ff df 48 8d bb 8c 00 00 00 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 f8
RSP: 0018:ffffc90003eff8b8 EFLAGS: 00010217
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000011 RSI: ffffffff8394e5fd RDI: 000000000000008c
RBP: ffff888079524000 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
R13: ffff888076fe8d98 R14: ffff888076fe9228 R15: ffff888076fe8d70
FS:  0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f02355d7140 CR3: 0000000029a8b000 CR4: 0000000000350ef0
----------------
Code disassembly (best guess):
   0:	03 80 3c 02 00 0f    	add    0xf00023c(%rax),%eax
   6:	85 28                	test   %ebp,(%rax)
   8:	0d 00 00 48 8b       	or     $0x8b480000,%eax
   d:	9d                   	popfq
   e:	00 09                	add    %cl,(%rcx)
  10:	00 00                	add    %al,(%rax)
  12:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
  19:	fc ff df
  1c:	48 8d bb 8c 00 00 00 	lea    0x8c(%rbx),%rdi
  23:	48 89 fa             	mov    %rdi,%rdx
  26:	48 c1 ea 03          	shr    $0x3,%rdx
* 2a:	0f b6 14 02          	movzbl (%rdx,%rax,1),%edx <-- trapping instruction
  2e:	48 89 f8             	mov    %rdi,%rax
  31:	83 e0 07             	and    $0x7,%eax
  34:	83 c0 03             	add    $0x3,%eax
  37:	38 d0                	cmp    %dl,%al
  39:	7c 08                	jl     0x43
  3b:	84 d2                	test   %dl,%dl
  3d:	0f                   	.byte 0xf
  3e:	85 f8                	test   %edi,%eax

Crashes (134):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/01/22 14:48 upstream f67144022885 559a440a .config strace log report syz C [mounted in repro] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2022/12/18 09:51 upstream f9ff5644bcc0 05494336 .config strace log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/05/03 00:31 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 14f8db1c0f9a 48e0a81d .config console log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2022/12/18 22:19 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci a5541c0811a0 05494336 .config console log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-gce-arm64 BUG: unable to handle kernel NULL pointer dereference in gfs2_evict_inode
2022/12/18 06:01 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci a5541c0811a0 05494336 .config console log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-gce-arm64 BUG: unable to handle kernel NULL pointer dereference in gfs2_evict_inode
2023/05/03 05:39 upstream 7df047b3f0aa 48e0a81d .config strace log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/05/05 19:29 upstream 78b421b6a7c6 4cec9341 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/05/02 02:57 upstream c8c655c34e33 62df2017 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/05/01 00:08 upstream 58390c8ce1bd 62df2017 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/23 16:43 upstream 622322f53c6d 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root general protection fault in gfs2_evict_inode
2023/04/23 08:10 upstream 622322f53c6d 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/20 13:10 upstream cb0856346a60 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/04/17 10:56 upstream 6a8f57ae2eb0 c6ec7083 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/04/17 07:33 upstream 6a8f57ae2eb0 ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/16 12:41 upstream 3e7bb4f24617 ec410564 .config console log report info ci-qemu-upstream general protection fault in gfs2_evict_inode
2023/04/15 06:30 upstream 95abc817ab3a ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/04/14 10:18 upstream 44149752e998 3cfcaa1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/04/14 04:43 upstream 44149752e998 3cfcaa1b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/11 16:48 upstream 0d3eb744aed4 49faf98d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/06 22:11 upstream f2afccfefe7b 00ce4c67 .config console log report info ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/05 10:52 upstream 76f598ba7d8e 831373d3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/04 12:35 upstream 148341f0a2f5 928dd177 .config console log report info ci-upstream-kasan-gce-selinux-root general protection fault in gfs2_evict_inode
2023/04/01 11:52 upstream 7b50567bdcad f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/04/01 07:42 upstream 5a57b48fdfcb f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root general protection fault in gfs2_evict_inode
2023/03/31 08:53 upstream 62bad54b26db f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/30 18:46 upstream 8bb95a1662f8 f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/27 09:39 upstream 197b6b60ae7b f8f96aa9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/24 23:02 upstream 1e760fa3596e 9700afae .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/16 20:32 upstream 0ddc84d2dd43 18b58603 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/16 15:05 upstream 9c1bec9c0b08 18b58603 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/16 07:47 upstream 9c1bec9c0b08 18b58603 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/15 12:06 upstream 6015b1aca1a2 18b58603 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/03/13 23:29 upstream eeac8ede1755 026e2200 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/13 00:51 upstream 134231664868 5205ef30 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/06 01:16 upstream f915322fe014 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/03 20:25 upstream 2eb29d59ddf0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/03/03 07:03 upstream 04a357b1f6f0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/28 17:03 upstream ae3419fbac84 95aee97a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/26 22:08 upstream 2fcd07b7ccd5 ee50e71c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/02/25 12:32 upstream 8cbd92339db0 ee50e71c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/22 21:46 upstream 5b7c4cabbb65 9f1e2cb3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/22 05:22 upstream 9e58df973d22 42a4d508 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/21 17:41 upstream 89f5349e0673 f949448d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/20 15:39 upstream c9c3395d5e3d bcdf85f8 .config console log report info ci2-upstream-fs general protection fault in gfs2_evict_inode
2023/02/18 17:14 upstream 38f8ccde04a3 d02e9a70 .config console log report info ci2-upstream-fs general protection fault in gfs2_evict_inode
2022/06/22 15:05 upstream ca1fdab7fd27 0fc5c330 .config console log report info ci-upstream-kasan-gce-root general protection fault in gfs2_evict_inode
2023/04/07 17:29 upstream f2afccfefe7b f7ba566d .config console log report info ci-qemu-upstream-386 general protection fault in gfs2_evict_inode
2023/04/27 16:42 linux-next 84e2893b4573 6f5b1cc4 .config console log report info ci-upstream-linux-next-kasan-gce-root general protection fault in gfs2_evict_inode
2023/03/04 11:41 linux-next 1acf39ef8f14 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in gfs2_evict_inode
2023/02/24 02:43 linux-next 0222aa9800b2 9e2ebb3c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in gfs2_evict_inode
2023/05/13 14:09 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 14f8db1c0f9a 2b9ba477 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/05/03 00:17 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 14f8db1c0f9a 48e0a81d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/03/28 01:59 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci e8d018dd0257 47f3aaf1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/03/26 06:25 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci e8d018dd0257 fbf0499a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/03/23 22:05 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci fe15c26ee26e f94b4a29 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/03/05 16:18 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 596b6b709632 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/03/04 10:09 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 596b6b709632 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/02/21 18:59 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci a9b06ec42c0f f949448d .config console log report info ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in gfs2_evict_inode
2023/02/18 12:15 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2d3827b3f393 d02e9a70 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel NULL pointer dereference in gfs2_evict_inode
* Struck through repros no longer work on HEAD.