mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-03 17:14:14 +08:00
dm cache policy smq: only demote entries in bottom half of the clean multiqueue
Heavy IO load may mean there are very few clean blocks in the cache, and we risk demoting entries that get hit a lot. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
This commit is contained in:
parent
072792dcdf
commit
a8cd1eba61
@ -1190,7 +1190,7 @@ static void queue_demotion(struct smq_policy *mq)
|
||||
if (unlikely(WARN_ON_ONCE(!mq->migrations_allowed)))
|
||||
return;
|
||||
|
||||
e = q_peek(&mq->clean, mq->clean.nr_levels, true);
|
||||
e = q_peek(&mq->clean, mq->clean.nr_levels / 2, true);
|
||||
if (!e) {
|
||||
if (!clean_target_met(mq, false))
|
||||
queue_writeback(mq);
|
||||
|
Loading…
Reference in New Issue
Block a user