diff options
Diffstat (limited to 'libbcachefs/journal_reclaim.c')
-rw-r--r-- | libbcachefs/journal_reclaim.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libbcachefs/journal_reclaim.c b/libbcachefs/journal_reclaim.c index 17beba0e..fb4e850c 100644 --- a/libbcachefs/journal_reclaim.c +++ b/libbcachefs/journal_reclaim.c @@ -268,10 +268,9 @@ out: static bool should_discard_bucket(struct journal *j, struct journal_device *ja) { - bool ret; - spin_lock(&j->lock); - ret = ja->discard_idx != ja->dirty_idx_ondisk; + bool ret = bch2_journal_dev_buckets_available(j, ja, journal_space_discarded) < 4 && + ja->discard_idx != ja->dirty_idx_ondisk; spin_unlock(&j->lock); return ret; |