summaryrefslogtreecommitdiffstats
path: root/drivers/md/bitmap.h
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2010-06-01 11:37:34 +0200
committerNeilBrown <neilb@suse.de>2010-07-26 05:21:34 +0200
commite384e58549a2e9a83071ad80280c1a9053cfd84c (patch)
tree805619143612ddc8cc71a45dd4522393c23a576f /drivers/md/bitmap.h
parentmd/bitmap: optimise scanning of empty bitmaps. (diff)
downloadlinux-e384e58549a2e9a83071ad80280c1a9053cfd84c.tar.xz
linux-e384e58549a2e9a83071ad80280c1a9053cfd84c.zip
md/bitmap: prepare for storing write-intent-bitmap via dm-dirty-log.
This allows md/raid5 to fully work as a dm target. Normally md uses a 'filemap' which contains a list of pages of bits each of which may be written separately. dm-log uses and all-or-nothing approach to writing the log, so when using a dm-log, ->filemap is NULL and the flags normally stored in filemap_attr are stored in ->logattrs instead. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/bitmap.h')
-rw-r--r--drivers/md/bitmap.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/md/bitmap.h b/drivers/md/bitmap.h
index 3797dea4723a..a7a11134268d 100644
--- a/drivers/md/bitmap.h
+++ b/drivers/md/bitmap.h
@@ -222,6 +222,10 @@ struct bitmap {
unsigned long file_pages; /* number of pages in the file */
int last_page_size; /* bytes in the last page */
+ unsigned long logattrs; /* used when filemap_attr doesn't exist
+ * because we are working with a dirty_log
+ */
+
unsigned long flags;
int allclean;
@@ -243,6 +247,7 @@ struct bitmap {
wait_queue_head_t behind_wait;
struct sysfs_dirent *sysfs_can_clear;
+
};
/* the bitmap API */