summaryrefslogtreecommitdiffstats
path: root/drivers/md/dm-thin-metadata.h
diff options
context:
space:
mode:
authorJoe Thornber2014-10-06 16:28:30 +0200
committerMike Snitzer2014-11-10 21:25:27 +0100
commit8a01a6af75f839ff8eb25dab69b49224e855bfa1 (patch)
tree6e0c31ce682332cd8af5d6f77037b56421507542 /drivers/md/dm-thin-metadata.h
parentdm transaction manager: add support for prefetching blocks of metadata (diff)
downloadkernel-qcow2-linux-8a01a6af75f839ff8eb25dab69b49224e855bfa1.tar.gz
kernel-qcow2-linux-8a01a6af75f839ff8eb25dab69b49224e855bfa1.tar.xz
kernel-qcow2-linux-8a01a6af75f839ff8eb25dab69b49224e855bfa1.zip
dm thin: prefetch missing metadata pages
Prefetch metadata at the start of the worker thread and then again every 128th bio processed from the deferred list. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md/dm-thin-metadata.h')
-rw-r--r--drivers/md/dm-thin-metadata.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/md/dm-thin-metadata.h b/drivers/md/dm-thin-metadata.h
index efedd5a4cd8f..921d15ee56a0 100644
--- a/drivers/md/dm-thin-metadata.h
+++ b/drivers/md/dm-thin-metadata.h
@@ -213,6 +213,11 @@ int dm_pool_register_metadata_threshold(struct dm_pool_metadata *pmd,
int dm_pool_metadata_set_needs_check(struct dm_pool_metadata *pmd);
bool dm_pool_metadata_needs_check(struct dm_pool_metadata *pmd);
+/*
+ * Issue any prefetches that may be useful.
+ */
+void dm_pool_issue_prefetches(struct dm_pool_metadata *pmd);
+
/*----------------------------------------------------------------*/
#endif