From 14374ab1bd13191d0f7965645cfbf0f389490ad8 Mon Sep 17 00:00:00 2001 From: Hannes Laimer Date: Tue, 26 Nov 2024 15:52:38 +0100 Subject: [PATCH] fix #3588: helper: consider NIC count for config-specific timeout There have been some reports about `qm start` timeouts on VMs that have a lot of NICs assigned. This patch considers the number of NICs when calculating the config-specific timeout. Since the increase in start time is linearly related to the number of NICs, a constant timeout increment per NIC was chosen. Signed-off-by: Hannes Laimer --- PVE/QemuServer/Helpers.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/PVE/QemuServer/Helpers.pm b/PVE/QemuServer/Helpers.pm index 15e2496c..72a46a0a 100644 --- a/PVE/QemuServer/Helpers.pm +++ b/PVE/QemuServer/Helpers.pm @@ -167,6 +167,15 @@ sub config_aware_timeout { $timeout = 150; } + # Some testing showed that adding a NIC increased the start time by ~450ms + # consistently across different NIC models, options and already existing + # number of NICs. + # So 10x that to account for any potential system differences seemed + # reasonable. User reports with real-life values (20+: ~50s, 25: 45s, 17: 42s) + # also make this seem a good value. + my $nic_count = scalar (grep { /^net\d+/ } keys %{$config}); + $timeout += $nic_count * 5; + return $timeout; }