btrfs-progs: convert: move csum_disk_extent
authorDavid Sterba <dsterba@suse.com>
Tue, 23 Aug 2016 15:38:55 +0000 (17:38 +0200)
committerDavid Sterba <dsterba@suse.com>
Wed, 24 Aug 2016 12:37:36 +0000 (14:37 +0200)
Signed-off-by: David Sterba <dsterba@suse.com>
btrfs-convert.c

index 480ce9e..a9af9a0 100644 (file)
@@ -189,6 +189,35 @@ fail:
        return ret;
 }
 
+static int csum_disk_extent(struct btrfs_trans_handle *trans,
+                           struct btrfs_root *root,
+                           u64 disk_bytenr, u64 num_bytes)
+{
+       u32 blocksize = root->sectorsize;
+       u64 offset;
+       char *buffer;
+       int ret = 0;
+
+       buffer = malloc(blocksize);
+       if (!buffer)
+               return -ENOMEM;
+       for (offset = 0; offset < num_bytes; offset += blocksize) {
+               ret = read_disk_extent(root, disk_bytenr + offset,
+                                       blocksize, buffer);
+               if (ret)
+                       break;
+               ret = btrfs_csum_file_block(trans,
+                                           root->fs_info->csum_root,
+                                           disk_bytenr + num_bytes,
+                                           disk_bytenr + offset,
+                                           buffer, blocksize);
+               if (ret)
+                       break;
+       }
+       free(buffer);
+       return ret;
+}
+
 /*
  * Open Ext2fs in readonly mode, read block allocation bitmap and
  * inode bitmap into memory.
@@ -430,35 +459,6 @@ error:
        return -1;
 }
 
-static int csum_disk_extent(struct btrfs_trans_handle *trans,
-                           struct btrfs_root *root,
-                           u64 disk_bytenr, u64 num_bytes)
-{
-       u32 blocksize = root->sectorsize;
-       u64 offset;
-       char *buffer;
-       int ret = 0;
-
-       buffer = malloc(blocksize);
-       if (!buffer)
-               return -ENOMEM;
-       for (offset = 0; offset < num_bytes; offset += blocksize) {
-               ret = read_disk_extent(root, disk_bytenr + offset,
-                                       blocksize, buffer);
-               if (ret)
-                       break;
-               ret = btrfs_csum_file_block(trans,
-                                           root->fs_info->csum_root,
-                                           disk_bytenr + num_bytes,
-                                           disk_bytenr + offset,
-                                           buffer, blocksize);
-               if (ret)
-                       break;
-       }
-       free(buffer);
-       return ret;
-}
-
 struct blk_iterate_data {
        struct btrfs_trans_handle *trans;
        struct btrfs_root *root;