btrfs-progs: Remove recover_get_good_super
authorNikolay Borisov <nborisov@suse.com>
Tue, 5 Dec 2017 08:39:45 +0000 (10:39 +0200)
committerDavid Sterba <dsterba@suse.com>
Wed, 31 Jan 2018 14:14:01 +0000 (15:14 +0100)
Currently getting the good super really consists of just getting the
first entry on the linked list, since it's the one with the highest
transid. So remove the function and just use list_first_entry directly.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
super-recover.c

index 6a13d81..e125131 100644 (file)
@@ -177,15 +177,6 @@ static int read_fs_supers(struct btrfs_recover_superblock *recover)
        return 0;
 }
 
-static struct super_block_record *recover_get_good_super(
-                               struct btrfs_recover_superblock *recover)
-{
-       struct super_block_record *record;
-       record = list_entry(recover->good_supers.next,
-                               struct super_block_record, list);
-       return record;
-}
-
 static void print_super_info(struct super_block_record *record)
 {
        printf("\t\tdevice name = %s\n", record->device_name);
@@ -280,7 +271,9 @@ int btrfs_recover_superblocks(const char *dname,
                        goto no_recover;
                }
        }
-       record = recover_get_good_super(&recover);
+       record = list_first_entry(&recover.good_supers,
+                                 struct super_block_record, list);
+
        root = open_ctree(record->device_name, record->bytenr,
                          OPEN_CTREE_RECOVER_SUPER | OPEN_CTREE_WRITES);
        if (!root) {