summaryrefslogtreecommitdiff
path: root/drivers/md/dm-cache-target.c
diff options
context:
space:
mode:
authorJoe Thornber <ejt@redhat.com>2013-10-21 11:51:45 (GMT)
committerMike Snitzer <snitzer@redhat.com>2013-11-09 22:55:49 (GMT)
commitf8e5f01a3266e68e29024edc2bf2dbf81a864f41 (patch)
treee60fb7b744c0957c71c00a7ef5936dbf4814ebcc /drivers/md/dm-cache-target.c
parent99ba2ae4cd876bbcedb01d94c1a7952ce171418e (diff)
downloadlinux-f8e5f01a3266e68e29024edc2bf2dbf81a864f41.tar.xz
dm cache: io destined for the cache device can now serve as tick bios
Previously only origin bios could trigger ticks, which meant if all the io was destined for the cache no ticks were generated. If no ticks are generated then multiple hits, and movements in general, are attributed to the same tick. Only a stop gap fix, we need a better solution. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md/dm-cache-target.c')
-rw-r--r--drivers/md/dm-cache-target.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
index 2956976..c1e9266 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -605,6 +605,7 @@ static void remap_to_origin_clear_discard(struct cache *cache, struct bio *bio,
static void remap_to_cache_dirty(struct cache *cache, struct bio *bio,
dm_oblock_t oblock, dm_cblock_t cblock)
{
+ check_if_tick_bio_needed(cache, bio);
remap_to_cache(cache, bio, cblock);
if (bio_data_dir(bio) == WRITE) {
set_dirty(cache, oblock, cblock);