[pve-devel] [PATCH qemu-server 1/3] hotplug_pending: remove redundant write/load config calls
Oguz Bektas
o.bektas at proxmox.com
Tue Nov 26 18:59:55 CET 2019
instead of writing the config after every change, we can do it once for
all the changes in the end to avoid redundant i/o.
we also don't need to load_config after writing fastplug changes.
Signed-off-by: Oguz Bektas <o.bektas at proxmox.com>
---
PVE/QemuServer.pm | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 75e4f67..9749917 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -4773,7 +4773,6 @@ sub vmconfig_hotplug_pending {
if ($changes) {
PVE::QemuConfig->write_config($vmid, $conf);
- $conf = PVE::QemuConfig->load_config($vmid); # update/reload
}
my $hotplug_features = parse_hotplug_features(defined($conf->{hotplug}) ? $conf->{hotplug} : '1');
@@ -4833,11 +4832,8 @@ sub vmconfig_hotplug_pending {
if (my $err = $@) {
&$add_error($opt, $err) if $err ne "skip\n";
} else {
- # save new config if hotplug was successful
delete $conf->{$opt};
PVE::QemuConfig->remove_from_pending_delete($conf, $opt);
- PVE::QemuConfig->write_config($vmid, $conf);
- $conf = PVE::QemuConfig->load_config($vmid); # update/reload
}
}
@@ -4925,13 +4921,12 @@ sub vmconfig_hotplug_pending {
if (my $err = $@) {
&$add_error($opt, $err) if $err ne "skip\n";
} else {
- # save new config if hotplug was successful
$conf->{$opt} = $value;
delete $conf->{pending}->{$opt};
- PVE::QemuConfig->write_config($vmid, $conf);
- $conf = PVE::QemuConfig->load_config($vmid); # update/reload
}
}
+
+ PVE::QemuConfig->write_config($vmid, $conf);
}
sub try_deallocate_drive {
--
2.20.1
More information about the pve-devel
mailing list