]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tree-wide: enable automatic growing of file systems in images in various tools that...
authorLennart Poettering <lennart@poettering.net>
Wed, 21 Apr 2021 14:46:56 +0000 (16:46 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 23 Apr 2021 15:56:51 +0000 (17:56 +0200)
Let's enable this in all tools that intend to write to the OS images.
It's not conditionalized for now, as there already is conditionalization
in the existance or absence of the flag in the GPT partition table (and
it's opt-in), hence it should be OK to just enable this by default for
now if the flag is set.

src/core/namespace.c
src/firstboot/firstboot.c
src/journal/journalctl.c
src/machine-id-setup/machine-id-setup-main.c
src/nspawn/nspawn.c
src/sysusers/sysusers.c
src/tmpfiles/tmpfiles.c

index 77fb0d4394c6ed17eab2d1c89ccb1e579560bc0d..acf8d14b67f295ede18dd43cd91153e0ab93b0f4 100644 (file)
@@ -1818,7 +1818,8 @@ int setup_namespace(
                 DISSECT_IMAGE_DISCARD_ON_LOOP |
                 DISSECT_IMAGE_RELAX_VAR_CHECK |
                 DISSECT_IMAGE_FSCK |
-                DISSECT_IMAGE_USR_NO_ROOT;
+                DISSECT_IMAGE_USR_NO_ROOT |
+                DISSECT_IMAGE_GROWFS;
         size_t n_mounts;
         int r;
 
index ba0b360cc1a526fb0b671d498603615c5a295940..ffb92a02c4a27fa2051a4f2d3dced8b770281aca 100644 (file)
@@ -1357,7 +1357,8 @@ static int run(int argc, char *argv[]) {
                                 DISSECT_IMAGE_REQUIRE_ROOT |
                                 DISSECT_IMAGE_VALIDATE_OS |
                                 DISSECT_IMAGE_RELAX_VAR_CHECK |
-                                DISSECT_IMAGE_FSCK,
+                                DISSECT_IMAGE_FSCK |
+                                DISSECT_IMAGE_GROWFS,
                                 &unlink_dir,
                                 &loop_device,
                                 &decrypted_image);
index b4a8bd1bfbb36abfc624104da3da1bc7bbb6c4ba..c8fb726d420f00b50f57ebe66c77d701f5b323a0 100644 (file)
@@ -2154,7 +2154,7 @@ int main(int argc, char *argv[]) {
                                 DISSECT_IMAGE_REQUIRE_ROOT |
                                 DISSECT_IMAGE_VALIDATE_OS |
                                 DISSECT_IMAGE_RELAX_VAR_CHECK |
-                                (arg_action == ACTION_UPDATE_CATALOG ? DISSECT_IMAGE_FSCK : DISSECT_IMAGE_READ_ONLY),
+                                (arg_action == ACTION_UPDATE_CATALOG ? DISSECT_IMAGE_FSCK|DISSECT_IMAGE_GROWFS : DISSECT_IMAGE_READ_ONLY),
                                 &unlink_dir,
                                 &loop_device,
                                 &decrypted_image);
index 9539c39c4e7cf5a7edeae66534e4759be1866186..5af6bfeafe4af3b40668313505b956670a75b0ad 100644 (file)
@@ -146,7 +146,8 @@ static int run(int argc, char *argv[]) {
                                 DISSECT_IMAGE_REQUIRE_ROOT |
                                 DISSECT_IMAGE_VALIDATE_OS |
                                 DISSECT_IMAGE_RELAX_VAR_CHECK |
-                                DISSECT_IMAGE_FSCK,
+                                DISSECT_IMAGE_FSCK |
+                                DISSECT_IMAGE_GROWFS,
                                 &unlink_dir,
                                 &loop_device,
                                 &decrypted_image);
index ed9b31e63ba1219ae5c9d8a7edc72d099c9a0446..767e71115040fd74552ab14ed3b7fa9916af5ee9 100644 (file)
@@ -3588,7 +3588,7 @@ static int outer_child(
                                 DISSECT_IMAGE_MOUNT_ROOT_ONLY|
                                 DISSECT_IMAGE_DISCARD_ON_LOOP|
                                 DISSECT_IMAGE_USR_NO_ROOT|
-                                (arg_read_only ? DISSECT_IMAGE_READ_ONLY : DISSECT_IMAGE_FSCK)|
+                                (arg_read_only ? DISSECT_IMAGE_READ_ONLY : DISSECT_IMAGE_FSCK|DISSECT_IMAGE_GROWFS)|
                                 (arg_start_mode == START_BOOT ? DISSECT_IMAGE_VALIDATE_OS : 0));
                 if (r < 0)
                         return r;
@@ -3681,7 +3681,7 @@ static int outer_child(
                                 DISSECT_IMAGE_MOUNT_NON_ROOT_ONLY|
                                 DISSECT_IMAGE_DISCARD_ON_LOOP|
                                 DISSECT_IMAGE_USR_NO_ROOT|
-                                (arg_read_only ? DISSECT_IMAGE_READ_ONLY : DISSECT_IMAGE_FSCK));
+                                (arg_read_only ? DISSECT_IMAGE_READ_ONLY : DISSECT_IMAGE_FSCK|DISSECT_IMAGE_GROWFS));
                 if (r == -EUCLEAN)
                         return log_error_errno(r, "File system check for image failed: %m");
                 if (r < 0)
index 8d3086e20916bb47d2d60a79f03e7a7fe2195046..642cf5be9723c8dc379d85bc8798c9122ece2144 100644 (file)
@@ -1997,7 +1997,8 @@ static int run(int argc, char *argv[]) {
                                 DISSECT_IMAGE_REQUIRE_ROOT |
                                 DISSECT_IMAGE_VALIDATE_OS |
                                 DISSECT_IMAGE_RELAX_VAR_CHECK |
-                                DISSECT_IMAGE_FSCK,
+                                DISSECT_IMAGE_FSCK |
+                                DISSECT_IMAGE_GROWFS,
                                 &unlink_dir,
                                 &loop_device,
                                 &decrypted_image);
index b6de1e74b210d2a692693ad1588f7371fa5bdc5d..98f14bbbe7293dab97652118e95ed3ff6f9f0e8f 100644 (file)
@@ -3446,7 +3446,8 @@ static int run(int argc, char *argv[]) {
                                 DISSECT_IMAGE_REQUIRE_ROOT |
                                 DISSECT_IMAGE_VALIDATE_OS |
                                 DISSECT_IMAGE_RELAX_VAR_CHECK |
-                                DISSECT_IMAGE_FSCK,
+                                DISSECT_IMAGE_FSCK |
+                                DISSECT_IMAGE_GROWFS,
                                 &unlink_dir,
                                 &loop_device,
                                 &decrypted_image);