summaryrefslogtreecommitdiff
path: root/drivers/md/persistent-data/dm-space-map-metadata.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-03-02 19:53:09 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-03-02 19:53:09 -0800
commitaa074c1c805a38c01c0dfe56f78d409e33be28a2 (patch)
tree5a361535d8df880af24e02b1508c2a6b44ae17c5 /drivers/md/persistent-data/dm-space-map-metadata.h
parent7a962a4b6e86d27a7ba1c325a5981b52ad72c29b (diff)
parent0414855fdc4a40da05221fc6062cccbc0c30f169 (diff)
Merge 3.14-rc5 into char-misc-next
We want these fixes in here as well.
Diffstat (limited to 'drivers/md/persistent-data/dm-space-map-metadata.h')
-rw-r--r--drivers/md/persistent-data/dm-space-map-metadata.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/md/persistent-data/dm-space-map-metadata.h b/drivers/md/persistent-data/dm-space-map-metadata.h
index 39bba0801cf2..64df923974d8 100644
--- a/drivers/md/persistent-data/dm-space-map-metadata.h
+++ b/drivers/md/persistent-data/dm-space-map-metadata.h
@@ -9,6 +9,17 @@
#include "dm-transaction-manager.h"
+#define DM_SM_METADATA_BLOCK_SIZE (4096 >> SECTOR_SHIFT)
+
+/*
+ * The metadata device is currently limited in size.
+ *
+ * We have one block of index, which can hold 255 index entries. Each
+ * index entry contains allocation info about ~16k metadata blocks.
+ */
+#define DM_SM_METADATA_MAX_BLOCKS (255 * ((1 << 14) - 64))
+#define DM_SM_METADATA_MAX_SECTORS (DM_SM_METADATA_MAX_BLOCKS * DM_SM_METADATA_BLOCK_SIZE)
+
/*
* Unfortunately we have to use two-phase construction due to the cycle
* between the tm and sm.