dm writecache: pause writeback if cache full and origin being written directly
authorMikulas Patocka <mpatocka@redhat.com>
Fri, 25 Jun 2021 19:33:02 +0000 (15:33 -0400)
committerMike Snitzer <snitzer@redhat.com>
Fri, 25 Jun 2021 20:04:01 +0000 (16:04 -0400)
commit95b88f4d71cb953e02206be3c757083601391a0f
tree5330af07d1fdf5a5c2edb48d07fc377b704c532f
parentdc4fa29fe445933f51e08674f3b325547ba52de1
dm writecache: pause writeback if cache full and origin being written directly

Implementation reuses dm_io_tracker, that until now was only used by
dm-cache, to track if any writes were issued directly to the origin
(due to cache being full) within the last second. If so writeback is
paused for a second.

This change improves performance for when the cache is full and IO is
issued directly to the origin device (rather than through the cache).

Depends-on: d53f1fafec9d ("dm writecache: do direct write if the cache is full")
Suggested-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-writecache.c