]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - drivers/md/dm-thin-metadata.c
dm thin: relax hard limit on the maximum size of a metadata device
[mirror_ubuntu-zesty-kernel.git] / drivers / md / dm-thin-metadata.c
index 237571af77fdfcf552b7061fa13ff291514c86b7..737d38865b693fb0288306477587f4e0d52f6cfa 100644 (file)
@@ -614,7 +614,7 @@ static int __commit_transaction(struct dm_pool_metadata *pmd)
        if (r < 0)
                goto out;
 
-       r = dm_sm_root_size(pmd->metadata_sm, &data_len);
+       r = dm_sm_root_size(pmd->data_sm, &data_len);
        if (r < 0)
                goto out;
 
@@ -713,6 +713,9 @@ struct dm_pool_metadata *dm_pool_metadata_open(struct block_device *bdev,
        if (r)
                goto bad;
 
+       if (bdev_size > THIN_METADATA_MAX_SECTORS)
+               bdev_size = THIN_METADATA_MAX_SECTORS;
+
        disk_super = dm_block_data(sblock);
        disk_super->magic = cpu_to_le64(THIN_SUPERBLOCK_MAGIC);
        disk_super->version = cpu_to_le32(THIN_VERSION);