]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
vmspawn: fix grow_image: Assertion `path' failed. 37320/head
authorArian van Putten <arian.vanputten@gmail.com>
Thu, 1 May 2025 11:58:21 +0000 (11:58 +0000)
committerArian van Putten <arian.vanputten@gmail.com>
Fri, 2 May 2025 09:05:06 +0000 (11:05 +0200)
arg_image might be NULL (e.g. when booting a USI, or when passing -D)

src/vmspawn/vmspawn.c

index 4ee9e473938d7f5f048ac946464ab88a20d6a63d..9e062006ab9dda0028edbf842c893cd96e6789b2 100644 (file)
@@ -2041,6 +2041,10 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) {
                 r = strv_extend_many(&cmdline, "-device", "scsi-hd,drive=vmspawn,bootindex=1");
                 if (r < 0)
                         return log_oom();
+
+                r = grow_image(arg_image, arg_grow_image);
+                if (r < 0)
+                        return r;
         }
 
         if (arg_directory) {
@@ -2336,10 +2340,6 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) {
                         return log_error_errno(r, "Failed to parse $SYSTEMD_VMSPAWN_QEMU_EXTRA: %m");
         }
 
-        r = grow_image(arg_image, arg_grow_image);
-        if (r < 0)
-                return r;
-
         if (DEBUG_LOGGING) {
                 _cleanup_free_ char *joined = quote_command_line(cmdline, SHELL_ESCAPE_EMPTY);
                 if (!joined)