[pve-devel] [PATCH v4 qemu-server 10/16] memory: rename qemu_dimm_list to qemu_memdevices_list
Alexandre Derumier
aderumier at odiso.com
Mon Feb 13 13:00:15 CET 2023
current qemu_dimm_list can return any kind of memory devices.
make it more generic, with a regex filter to choose kind of device
from id.
Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
---
PVE/QemuServer/Memory.pm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/PVE/QemuServer/Memory.pm b/PVE/QemuServer/Memory.pm
index c912e4f..a13b3a1 100644
--- a/PVE/QemuServer/Memory.pm
+++ b/PVE/QemuServer/Memory.pm
@@ -333,7 +333,7 @@ sub qemu_memory_hotplug {
while (1) {
eval { PVE::QemuServer::qemu_devicedel($vmid, $name) };
sleep 3;
- my $dimm_list = qemu_dimm_list($vmid);
+ my $dimm_list = qemu_memdevices_list($vmid, '^dimm(\d+)$');
last if !$dimm_list->{$name};
raise_param_exc({ $name => "error unplug memory module" }) if $retry > 5;
$retry++;
@@ -363,14 +363,14 @@ sub can_hotplug {
return 1;
}
-sub qemu_dimm_list {
- my ($vmid) = @_;
+sub qemu_memdevices_list {
+ my ($vmid, $filter) = @_;
my $dimmarray = mon_cmd($vmid, "query-memory-devices");
my $dimms = {};
foreach my $dimm (@$dimmarray) {
-
+ next if $filter && $dimm->{data}->{id} !~ /$filter/;
$dimms->{$dimm->{data}->{id}}->{id} = $dimm->{data}->{id};
$dimms->{$dimm->{data}->{id}}->{node} = $dimm->{data}->{node};
$dimms->{$dimm->{data}->{id}}->{addr} = $dimm->{data}->{addr};
--
2.30.2
More information about the pve-devel
mailing list