[pve-devel] [PATCH qemu-server] fix #3329: turn on cache=writeback for efidisks on rbd
Dominik Csapak
d.csapak at proxmox.com
Wed Jun 16 15:09:33 CEST 2021
on slower ceph clusters, the write pattern of the ovmf booting process
slows down the boot of the vm, so we turn on caching by default
it seems no other storage (until now) behaves like this. if it does in
the future, we can still add them too, or add a 'cache' property for
the efidisk
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
PVE/QemuServer.pm | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index d77981c..96375c3 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -3307,8 +3307,16 @@ sub config_to_command {
$size_str = ",size=" . (-s $ovmf_vars);
}
+ # on slower ceph clusters, booting without cache on efidisk can take a while.
+ # enable cache by default, should not be harmful since it's only the efidisk
+ # see #3329
+ my $cache = "";
+ if ($path =~ m/^rbd:/) {
+ $cache = ',cache=writeback';
+ }
+
push @$cmd, '-drive', "if=pflash,unit=0,format=raw,readonly=on,file=$ovmf_code";
- push @$cmd, '-drive', "if=pflash,unit=1,format=$format,id=drive-efidisk0$size_str,file=$path";
+ push @$cmd, '-drive', "if=pflash,unit=1$cache,format=$format,id=drive-efidisk0$size_str,file=$path";
}
# load q35 config
--
2.20.1
More information about the pve-devel
mailing list