FROMGIT: f2fs: fix wrong continue condition in GC

We should decrease the frozen counter.

Cc: stable@vger.kernel.org
Fixes: 325163e9892b ("f2fs: add gc_urgent_high_remaining sysfs node")
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
(cherry picked from commit 605b0a778aa2599aa902ae639b8e9937c74b869b
     https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git dev)
Change-Id: I892f215e778f7d89b9bbf3dfb292ed820944cf6b
This commit is contained in:
Jaegeuk Kim
2022-08-12 22:49:50 -07:00
committed by Todd Kjos
parent 619b99d2d4
commit e4c3ce6f7d

View File

@@ -93,14 +93,10 @@ static int gc_thread_func(void *data)
*/
if (sbi->gc_mode == GC_URGENT_HIGH) {
spin_lock(&sbi->gc_urgent_high_lock);
if (sbi->gc_urgent_high_limited) {
if (!sbi->gc_urgent_high_remaining) {
sbi->gc_urgent_high_limited = false;
spin_unlock(&sbi->gc_urgent_high_lock);
sbi->gc_mode = GC_NORMAL;
continue;
}
sbi->gc_urgent_high_remaining--;
if (sbi->gc_urgent_high_limited &&
!sbi->gc_urgent_high_remaining--) {
sbi->gc_urgent_high_limited = false;
sbi->gc_mode = GC_NORMAL;
}
spin_unlock(&sbi->gc_urgent_high_lock);
}