Skip to content

Commit 569f70e

Browse files
committed
Handle dirty ratio inertia > threshold
Signed-off-by: Daniel Madej <daniel.madej@huawei.com>
1 parent e6e01fe commit 569f70e

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/cleaning/alru.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -746,9 +746,15 @@ static bool check_for_dirty_ratio(ocf_cache_t cache,
746746
return false;
747747

748748
ctx = cache->cleaner.cleaning_policy_context;
749-
threshold = ctx->dirty_ratio_triggered
750-
? config->dirty_ratio_threshold - config->dirty_ratio_inertia
751-
: config->dirty_ratio_threshold;
749+
if (ctx->dirty_ratio_triggered) {
750+
if (config->dirty_ratio_inertia >= config->dirty_ratio_threshold)
751+
return true;
752+
753+
threshold = config->dirty_ratio_threshold
754+
- config->dirty_ratio_inertia;
755+
} else {
756+
threshold = config->dirty_ratio_threshold;
757+
}
752758

753759
ctx->dirty_ratio_triggered = info.dirty * 100 / info.size >= threshold;
754760
return ctx->dirty_ratio_triggered;

0 commit comments

Comments
 (0)