From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id DC5E21FF16B for ; Tue, 1 Jul 2025 17:48:52 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id EF43AAE57; Tue, 1 Jul 2025 17:49:08 +0200 (CEST) From: Fiona Ebner To: pve-devel@lists.proxmox.com Date: Tue, 1 Jul 2025 17:40:47 +0200 Message-ID: <20250701154117.434512-28-f.ebner@proxmox.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250701154117.434512-1-f.ebner@proxmox.com> References: <20250701154117.434512-1-f.ebner@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.028 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH qemu-server v2 27/49] blockdev: move helper for resize into module X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" And replace the deprecated check_running() call while at it. Signed-off-by: Fiona Ebner --- src/PVE/API2/Qemu.pm | 3 ++- src/PVE/QemuServer.pm | 21 --------------------- src/PVE/QemuServer/Blockdev.pm | 22 ++++++++++++++++++++++ 3 files changed, 24 insertions(+), 22 deletions(-) diff --git a/src/PVE/API2/Qemu.pm b/src/PVE/API2/Qemu.pm index 6565ce71..1aa3b358 100644 --- a/src/PVE/API2/Qemu.pm +++ b/src/PVE/API2/Qemu.pm @@ -28,6 +28,7 @@ use PVE::GuestImport; use PVE::QemuConfig; use PVE::QemuServer; use PVE::QemuServer::Agent; +use PVE::QemuServer::Blockdev; use PVE::QemuServer::BlockJob; use PVE::QemuServer::Cloudinit; use PVE::QemuServer::CPUConfig; @@ -5745,7 +5746,7 @@ __PACKAGE__->register_method({ "update VM $vmid: resize --disk $disk --size $sizestr", ); - PVE::QemuServer::qemu_block_resize( + PVE::QemuServer::Blockdev::resize( $vmid, "drive-$disk", $storecfg, $volid, $newsize, ); diff --git a/src/PVE/QemuServer.pm b/src/PVE/QemuServer.pm index dedb05f1..3f135fcb 100644 --- a/src/PVE/QemuServer.pm +++ b/src/PVE/QemuServer.pm @@ -4341,27 +4341,6 @@ sub qemu_block_set_io_throttle { } -sub qemu_block_resize { - my ($vmid, $deviceid, $storecfg, $volid, $size) = @_; - - my $running = check_running($vmid); - - PVE::Storage::volume_resize($storecfg, $volid, $size, $running); - - return if !$running; - - my $padding = (1024 - $size % 1024) % 1024; - $size = $size + $padding; - - mon_cmd( - $vmid, - "block_resize", - device => $deviceid, - size => int($size), - timeout => 60, - ); -} - sub qemu_volume_snapshot { my ($vmid, $deviceid, $storecfg, $volid, $snap) = @_; diff --git a/src/PVE/QemuServer/Blockdev.pm b/src/PVE/QemuServer/Blockdev.pm index 362355a0..660ad471 100644 --- a/src/PVE/QemuServer/Blockdev.pm +++ b/src/PVE/QemuServer/Blockdev.pm @@ -12,6 +12,7 @@ use PVE::JSONSchema qw(json_bool); use PVE::Storage; use PVE::QemuServer::Drive qw(drive_is_cdrom); +use PVE::QemuServer::Helpers; use PVE::QemuServer::Monitor qw(mon_cmd); my sub tpm_backup_node_name { @@ -500,4 +501,25 @@ sub detach_fleecing_block_nodes { } } +sub resize { + my ($vmid, $deviceid, $storecfg, $volid, $size) = @_; + + my $running = PVE::QemuServer::Helpers::vm_running_locally($vmid); + + PVE::Storage::volume_resize($storecfg, $volid, $size, $running); + + return if !$running; + + my $padding = (1024 - $size % 1024) % 1024; + $size = $size + $padding; + + mon_cmd( + $vmid, + "block_resize", + device => $deviceid, + size => int($size), + timeout => 60, + ); +} + 1; -- 2.47.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel