forked from luck/tmp_suning_uos_patched
dm thin metadata: move __superblock_all_zeroes to __open_or_format_metadata
Move the check for __superblock_all_zeroes from __create_persistent_data_objects() down to __open_or_format_metadata in dm-thin-metadata. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com>
This commit is contained in:
parent
a97e5e6fd0
commit
237074c0a3
|
@ -596,9 +596,15 @@ static int __open_metadata(struct dm_pool_metadata *pmd)
|
|||
}
|
||||
|
||||
static int __open_or_format_metadata(struct dm_pool_metadata *pmd,
|
||||
int create)
|
||||
int *create)
|
||||
{
|
||||
if (create)
|
||||
int r;
|
||||
|
||||
r = __superblock_all_zeroes(pmd->bm, create);
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
if (*create)
|
||||
return __format_metadata(pmd);
|
||||
else
|
||||
return __open_metadata(pmd);
|
||||
|
@ -617,13 +623,7 @@ static int __create_persistent_data_objects(struct dm_pool_metadata *pmd,
|
|||
return PTR_ERR(pmd->bm);
|
||||
}
|
||||
|
||||
r = __superblock_all_zeroes(pmd->bm, create);
|
||||
if (r) {
|
||||
dm_block_manager_destroy(pmd->bm);
|
||||
return r;
|
||||
}
|
||||
|
||||
r = __open_or_format_metadata(pmd, *create);
|
||||
r = __open_or_format_metadata(pmd, create);
|
||||
if (r)
|
||||
dm_block_manager_destroy(pmd->bm);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user