btrfs-progs/tune
Anand Jain 9f6e0ab2a4 btrfs-progs: tune: fix return without flag reset commit
In the function set_metadata_uuid(), we set the flag
BTRFS_SUPER_FLAG_CHANGING_FSID_V2 in step 1 at line 71 as shown below:

   71         super_flags |= BTRFS_SUPER_FLAG_CHANGING_FSID_V2;
   72         btrfs_set_super_flags(disk_super, super_flags);
   73         ret = btrfs_commit_transaction(trans, root);

However, we fail to reset this flag if there is no change in the fsid on
the incoming disks, as we return too early.

  105       } else {
  106               /* Setting the same fsid as current, do nothing */
  107               return 0;

Fix this by allowing the thread to pass through the step 2, where we
reset the flag.

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2023-08-28 17:24:58 +02:00
..
change-csum.c btrfs-progs: fix more typos found by codespell 2023-08-28 17:24:24 +02:00
change-metadata-uuid.c btrfs-progs: tune: fix return without flag reset commit 2023-08-28 17:24:58 +02:00
change-uuid.c btrfs-progs: track changing_fsid flag in fs_devices 2023-08-23 19:36:31 +02:00
convert-bgt.c btrfs-progs: fix -Wmissing-prototypes warnings 2023-05-26 18:02:31 +02:00
main.c btrfs-progs: tune: cache local variable of fs_info 2023-08-28 17:24:56 +02:00
seeding.c btrfs-progs: fix -Wmissing-prototypes warnings 2023-05-26 18:02:31 +02:00
tune.h btrfs-progs: tune: rework the main idea of csum change 2023-05-26 18:02:32 +02:00