From: Joe Thornber <ejt@redhat.com>

dm thin metadata: lift the call to __begin_transaction out of __write_initial_superblock

Code tidy.

Called higher up the call chain now.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
---
 drivers/md/dm-thin-metadata.c |   19 ++++++-------------
 1 file changed, 6 insertions(+), 13 deletions(-)

Index: linux/drivers/md/dm-thin-metadata.c
===================================================================
--- linux.orig/drivers/md/dm-thin-metadata.c
+++ linux/drivers/md/dm-thin-metadata.c
@@ -422,7 +422,6 @@ static void __setup_btree_details(struct
 	pmd->details_info.value_type.equal = NULL;
 }
 
-static int __begin_transaction(struct dm_pool_metadata *pmd);
 static int __write_initial_superblock(struct dm_pool_metadata *pmd)
 {
 	int r;
@@ -478,11 +477,7 @@ static int __write_initial_superblock(st
 	disk_super->metadata_nr_blocks = cpu_to_le64(bdev_size >> SECTOR_TO_BLOCK_SHIFT);
 	disk_super->data_block_size = cpu_to_le32(pmd->data_block_size);
 
-	r = dm_tm_commit(pmd->tm, sblock);
-	if (r)
-		return r;
-
-	return __begin_transaction(pmd);
+	return dm_tm_commit(pmd->tm, sblock);
 
 out_locked:
 	dm_bm_unlock(sblock);
@@ -800,13 +795,11 @@ struct dm_pool_metadata *dm_pool_metadat
 		return ERR_PTR(r);
 	}
 
-	if (!create) {
-		r = __begin_transaction(pmd);
-		if (r < 0) {
-			if (dm_pool_metadata_close(pmd) < 0)
-				DMWARN("%s: dm_pool_metadata_close() failed.", __func__);
-			return ERR_PTR(r);
-		}
+	r = __begin_transaction(pmd);
+	if (r < 0) {
+		if (dm_pool_metadata_close(pmd) < 0)
+			DMWARN("%s: dm_pool_metadata_close() failed.", __func__);
+		return ERR_PTR(r);
 	}
 
 	return pmd;
