Re: [syzbot] [f2fs?] KASAN: null-ptr-deref Write in f2fs_stop_gc_thread

From: Edward Adam Davis
Date: Sat Jul 27 2024 - 00:16:25 EST


use s_umount read lock sync remount and shutdown

#syz test: upstream 2c9b3512402e

diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index c1ad9b278c47..3940c0b11868 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -2280,7 +2280,9 @@ int f2fs_do_shutdown(struct f2fs_sb_info *sbi, unsigned int flag,
if (readonly)
goto out;

+ down_read(&sb->s_umount);
f2fs_stop_gc_thread(sbi);
+ up_read(&sb->s_umount);
f2fs_stop_discard_thread(sbi);

f2fs_drop_discard_cmd(sbi);