[pve-devel] [PATCH qemu-server 12/31] blockdev: add helper to get node below throttle node

Fiona Ebner f.ebner at proxmox.com
Fri Jun 27 17:57:08 CEST 2025


Signed-off-by: Fiona Ebner <f.ebner at proxmox.com>
---
 src/PVE/QemuServer/Blockdev.pm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/src/PVE/QemuServer/Blockdev.pm b/src/PVE/QemuServer/Blockdev.pm
index c1d3cba8..e5eba33e 100644
--- a/src/PVE/QemuServer/Blockdev.pm
+++ b/src/PVE/QemuServer/Blockdev.pm
@@ -124,6 +124,21 @@ my sub get_node_name {
     return "${prefix}${hash}";
 }
 
+sub get_node_name_below_throttle {
+    my ($vmid, $device_id) = @_;
+
+    my $block_info = get_block_info($vmid);
+    my $drive_id = $device_id =~ s/^drive-//r;
+    my $inserted = $block_info->{$drive_id}->{inserted}
+        or die "no block node inserted for drive '$drive_id'\n";
+
+    # before the switch to -blockdev, the top node was not throttle
+    return $inserted->{'node-name'} if $inserted->{drv} ne 'throttle';
+
+    my $child_info = mon_cmd($vmid, 'block-node-query-file-child', 'node-name' => $device_id);
+    return $child_info->{'node-name'};
+}
+
 my sub read_only_json_option {
     my ($drive, $options) = @_;
 
-- 
2.47.2





More information about the pve-devel mailing list