]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
repart: Move partition_defer() out of format_verity_hash/sig()
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Wed, 26 Apr 2023 08:09:10 +0000 (10:09 +0200)
committerDaan De Meyer <daan.j.demeyer@gmail.com>
Wed, 26 Apr 2023 08:09:10 +0000 (10:09 +0200)
To allow re-using format_verity_hash() for minimizing verity hash
partitions.

src/partition/repart.c

index 448513ff4d848ca00f784d33a787ad0f02503519..08ca4f4c0b3c007f2d2bdbb2c1969047c63c6bc7 100644 (file)
@@ -3568,9 +3568,6 @@ static int partition_format_verity_hash(
         if (PARTITION_EXISTS(p)) /* Never format existing partitions */
                 return 0;
 
-        if (partition_defer(p))
-                return 0;
-
         assert_se(dp = p->siblings[VERITY_DATA]);
         assert(!dp->dropped);
 
@@ -3711,9 +3708,6 @@ static int partition_format_verity_sig(Context *context, Partition *p) {
         if (PARTITION_EXISTS(p))
                 return 0;
 
-        if (partition_defer(p))
-                return 0;
-
         assert_se(hp = p->siblings[VERITY_HASH]);
         assert(!hp->dropped);
 
@@ -3814,14 +3808,14 @@ static int context_copy_blocks(Context *context) {
 
                 log_info("Copying in of '%s' on block level completed.", p->copy_blocks_path);
 
-                if (p->siblings[VERITY_HASH]) {
+                if (p->siblings[VERITY_HASH] && !partition_defer(p->siblings[VERITY_HASH])) {
                         r = partition_format_verity_hash(context, p->siblings[VERITY_HASH],
                                                          partition_target_path(t));
                         if (r < 0)
                                 return r;
                 }
 
-                if (p->siblings[VERITY_SIG]) {
+                if (p->siblings[VERITY_SIG] && !partition_defer(p->siblings[VERITY_SIG])) {
                         r = partition_format_verity_sig(context, p->siblings[VERITY_SIG]);
                         if (r < 0)
                                 return r;
@@ -4232,14 +4226,14 @@ static int context_mkfs(Context *context) {
                 if (r < 0)
                         return r;
 
-                if (p->siblings[VERITY_HASH]) {
+                if (p->siblings[VERITY_HASH] && !partition_defer(p->siblings[VERITY_HASH])) {
                         r = partition_format_verity_hash(context, p->siblings[VERITY_HASH],
                                                          partition_target_path(t));
                         if (r < 0)
                                 return r;
                 }
 
-                if (p->siblings[VERITY_SIG]) {
+                if (p->siblings[VERITY_SIG] && !partition_defer(p->siblings[VERITY_SIG])) {
                         r = partition_format_verity_sig(context, p->siblings[VERITY_SIG]);
                         if (r < 0)
                                 return r;