Re: [syzbot] [bcachefs?] INFO: task hung in bch2_journal_reclaim_thread (2)
From: Edward Adam Davis
Date: Sat Oct 26 2024 - 00:55:46 EST
avoid race conditions when journal's reclaim and flush acquire reclaim_lock
#syz test
diff --git a/fs/bcachefs/journal_reclaim.c b/fs/bcachefs/journal_reclaim.c
index ace291f175dd..58a745c72aac 100644
--- a/fs/bcachefs/journal_reclaim.c
+++ b/fs/bcachefs/journal_reclaim.c
@@ -731,7 +731,7 @@ static int bch2_journal_reclaim_thread(void *arg)
j->last_flushed = jiffies;
- while (!ret && !kthread_should_stop()) {
+ while (!j->flush_in_progress && !ret && !kthread_should_stop()) {
bool kicked = j->reclaim_kicked;
j->reclaim_kicked = false;