[PATCH 1/1][SRU][B/D/E] bcache: add cond_resched() in __bch_cache_cmp()

Heitor Alves de Siqueira halves at canonical.com
Thu Oct 10 20:19:39 UTC 2019


From: Shile Zhang <shile.zhang at linux.alibaba.com>

BugLink: https://bugs.launchpad.net/bugs/1840043

Read /sys/fs/bcache/<uuid>/cacheN/priority_stats can take very long
time with huge cache after long run.

Signed-off-by: Shile Zhang <shile.zhang at linux.alibaba.com>
Tested-by: Heitor Alves de Siqueira <halves at canonical.com>
Signed-off-by: Coly Li <colyli at suse.de>
Signed-off-by: Jens Axboe <axboe at kernel.dk>
(cherry picked from commit d55a4ae9e1af5fb1657e38284ef46c56e668efdb)
Signed-off-by: Heitor Alves de Siqueira <halves at canonical.com>
---
 drivers/md/bcache/sysfs.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/md/bcache/sysfs.c b/drivers/md/bcache/sysfs.c
index 21aec1e4a10d..c8694031bd7a 100644
--- a/drivers/md/bcache/sysfs.c
+++ b/drivers/md/bcache/sysfs.c
@@ -917,6 +917,7 @@ KTYPE(bch_cache_set_internal);
 
 static int __bch_cache_cmp(const void *l, const void *r)
 {
+	cond_resched();
 	return *((uint16_t *)r) - *((uint16_t *)l);
 }
 
-- 
2.23.0




More information about the kernel-team mailing list