Re: [syzbot] INFO: task hung in gfs2_gl_hash_clear (3)

From: Yu Liao
Date: Thu Dec 01 2022 - 01:15:26 EST


On 2022/11/29 16:32, syzbot wrote:
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 6d464646530f Merge branch 'for-next/core' into for-kernelci
> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
> console output: https://syzkaller.appspot.com/x/log.txt?x=167aebbb880000
> kernel config: https://syzkaller.appspot.com/x/.config?x=54b747d981acc7b7
> dashboard link: https://syzkaller.appspot.com/bug?extid=ed7d0f71a89e28557a77
> compiler: Debian clang version 13.0.1-++20220126092033+75e33f71c2da-1~exp1~20220126212112.63, GNU ld (GNU Binutils for Debian) 2.35.2
> userspace arch: arm64
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=16467353880000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=168c3d03880000
>

Fix missing call gfs2_make_fs_ro() int gfs2_put_super()

#syz test https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
b7b275e60bcd

--- a/fs/gfs2/super.c
+++ b/fs/gfs2/super.c
@@ -584,9 +584,7 @@ static void gfs2_put_super(struct super_block *sb)
}
spin_unlock(&sdp->sd_jindex_spin);

- if (!sb_rdonly(sb)) {
- gfs2_make_fs_ro(sdp);
- }
+ gfs2_make_fs_ro(sdp);
WARN_ON(gfs2_withdrawing(sdp));

/* At this point, we're through modifying the disk */
--