[1/1,SRU,B/D/E] bcache: add cond_resched() in __bch_cache_cmp()
diff mbox series

Message ID 20191010201940.30382-2-halves@canonical.com
State New
Headers show
Series
  • Fix bcache performance degradation when querying priority_stats
Related show

Commit Message

Heitor Alves de Siqueira Oct. 10, 2019, 8:19 p.m. UTC
From: Shile Zhang <shile.zhang@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@linux.alibaba.com>
Tested-by: Heitor Alves de Siqueira <halves@canonical.com>
Signed-off-by: Coly Li <colyli@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
(cherry picked from commit d55a4ae9e1af5fb1657e38284ef46c56e668efdb)
Signed-off-by: Heitor Alves de Siqueira <halves@canonical.com>
---
 drivers/md/bcache/sysfs.c | 1 +
 1 file changed, 1 insertion(+)

Patch
diff mbox series

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);
 }