From: Michael Ferrari Date: Thu, 3 Oct 2024 12:02:12 +0000 (+0200) Subject: repart: open target devices before UUID creation X-Git-Tag: v257-rc1~330 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f106fd2dbdbd9debfc2d2ed4d96ae3108a29c79b;p=thirdparty%2Fsystemd.git repart: open target devices before UUID creation This is to ensure that the UUIDs from the CopyBlocks= devices are copied to the corresponding new partition instead of creating a new UUID for it. With this verity partitions can be copied, keeping their UUIDs to ensure that they still match up with what is specified in roothash=. --- diff --git a/src/partition/repart.c b/src/partition/repart.c index 37d263196c9..090fe276728 100644 --- a/src/partition/repart.c +++ b/src/partition/repart.c @@ -9023,11 +9023,6 @@ static int run(int argc, char *argv[]) { return r; } - /* Make sure each partition has a unique UUID and unique label */ - r = context_acquire_partition_uuids_and_labels(context); - if (r < 0) - return r; - /* Open all files to copy blocks from now, since we want to take their size into consideration */ r = context_open_copy_block_paths( context, @@ -9037,6 +9032,11 @@ static int run(int argc, char *argv[]) { if (r < 0) return r; + /* Make sure each partition has a unique UUID and unique label */ + r = context_acquire_partition_uuids_and_labels(context); + if (r < 0) + return r; + r = context_fstab(context); if (r < 0) return r;