From: Stefan Reiter Date: Wed, 30 Jun 2021 15:18:17 +0000 (+0200) Subject: cfg2cmd/drive: don't use io_uring for krbd with wb/wt cache X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=628937f53acde52f7257ca79f574c87a45f392e7;p=qemu-server.git cfg2cmd/drive: don't use io_uring for krbd with wb/wt cache As reported here and locally reproduced: https://forum.proxmox.com/threads/efi-vms-wont-start-under-7-beta-with-writeback-cache.91629/ This configuration is currently broken. Until we figure out how to fix it properly, we can just have this (luckily very narrow) config pattern fall back to aio=threads as it used to. Signed-off-by: Stefan Reiter --- diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index 8af41765..f7604674 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -1600,8 +1600,11 @@ sub print_drive_commandline_full { $cache_direct = 1; } + # io_uring with cache mode writeback or writethrough on krbd will hang... + my $rbd_no_io_uring = $scfg && $scfg->{type} eq 'rbd' && $scfg->{krbd} && !$cache_direct; + if (!$drive->{aio}) { - if ($io_uring) { + if ($io_uring && !$rbd_no_io_uring) { # io_uring supports all cache modes $opts .= ",aio=io_uring"; } else {