From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 0018168879 for ; Thu, 22 Jul 2021 09:55:50 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id DCF36E69C for ; Thu, 22 Jul 2021 09:55:20 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id 61C67E692 for ; Thu, 22 Jul 2021 09:55:20 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 2E3DA41BD4 for ; Thu, 22 Jul 2021 09:55:20 +0200 (CEST) From: Lorenz Stechauner To: pve-devel@lists.proxmox.com Date: Thu, 22 Jul 2021 09:54:56 +0200 Message-Id: <20210722075456.112079-1-l.stechauner@proxmox.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.947 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLACK 3 Contains an URL listed in the URIBL blacklist [create.pm] Subject: [pve-devel] [PATCH v2 container] fix #3478: abort container creation on arch detection timeout X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jul 2021 07:55:51 -0000 increased the timeout for detect_arch from 5 to 10 seconds. until now, on any error detect_architecture would fall back to amd64. to avoid falling back due to an timeout error this function now dies on timeout errors. additionally minor changes to the error messages have been made. Signed-off-by: Lorenz Stechauner --- changes to v1: * implemented feedback * do not remove `\n` in error message src/PVE/LXC/Create.pm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/PVE/LXC/Create.pm b/src/PVE/LXC/Create.pm index 82d7ad9..e8233b6 100644 --- a/src/PVE/LXC/Create.pm +++ b/src/PVE/LXC/Create.pm @@ -52,10 +52,16 @@ sub detect_architecture { return $arch; }; - my $arch = eval { PVE::Tools::run_fork_with_timeout(5, $detect_arch) }; - if (my $err = $@) { + my $arch = eval { PVE::Tools::run_fork_with_timeout(10, $detect_arch); }; + my $err = $@; + + if (!defined($arch) && !defined($err)) { + # on timeout + die "Architecture detection failed: timeout\n"; + } elsif ($err) { + # any other error $arch = 'amd64'; - print "Architecture detection failed: $err\nFalling back to amd64.\n" . + print "Architecture detection failed: $err\nFalling back to $arch.\n" . "Use `pct set VMID --arch ARCH` to change.\n"; } else { print "Detected container architecture: $arch\n"; -- 2.30.2