[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20221027180416.3786792-1-jaegeuk@kernel.org>
Date: Thu, 27 Oct 2022 11:04:16 -0700
From: Jaegeuk Kim <jaegeuk@...nel.org>
To: linux-kernel@...r.kernel.org,
linux-f2fs-devel@...ts.sourceforge.net
Cc: Jaegeuk Kim <jaegeuk@...nel.org>
Subject: [PATCH] f2fs: do not stop threads in irq context
Let's stop threads first to avoid irq context.
Signed-off-by: Jaegeuk Kim <jaegeuk@...nel.org>
---
fs/f2fs/super.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index a241e4073f1d..14b4bb0f8ce6 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -3905,6 +3905,9 @@ static void f2fs_record_stop_reason(struct f2fs_sb_info *sbi)
struct f2fs_super_block *raw_super = F2FS_RAW_SUPER(sbi);
int err;
+ f2fs_stop_gc_thread(sbi);
+ f2fs_stop_discard_thread(sbi);
+
f2fs_down_write(&sbi->sb_lock);
spin_lock(&sbi->error_lock);
@@ -4014,9 +4017,6 @@ void f2fs_handle_critical_error(struct f2fs_sb_info *sbi, unsigned char reason,
*/
smp_wmb();
sb->s_flags |= SB_RDONLY;
-
- f2fs_stop_gc_thread(sbi);
- f2fs_stop_discard_thread(sbi);
}
static void flush_error_work(struct work_struct *work)
--
2.38.1.273.g43a17bfeac-goog
Powered by blists - more mailing lists