From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <pve-devel-bounces@lists.proxmox.com> Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 7CAAC1FF15E for <inbox@lore.proxmox.com>; Tue, 8 Apr 2025 21:18:26 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 7A28B351F9; Tue, 8 Apr 2025 21:18:21 +0200 (CEST) From: Stoiko Ivanov <s.ivanov@proxmox.com> To: pve-devel@lists.proxmox.com Date: Tue, 8 Apr 2025 21:18:06 +0200 Message-Id: <20250408191806.2410107-1-s.ivanov@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.064 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [install.pm] Subject: [pve-devel] [PATCH installer] btrfs: write /etc/kernel/cmdline unconditionally X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com> List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe> List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/> List-Post: <mailto:pve-devel@lists.proxmox.com> List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help> List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe> Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com> the recent change of handing the ESPs to proxmox-boot-tool broke installation on btrfs booted with systemd-boot (currently efi-systems without secureboot). our systemd-boot config-generation takes the kernel commandline from /etc/kernel/cmdline - without this there is no root= parameter, and we end up in a initramfs shell. write the file unconditionally of boot-mode (legacy, efi, efi-secureboot), to be consistent with the way we do it on ZFS. the uuid is stored in a variable instead of running blkid multiple time primarily to not end up with different versions of a similar command in the future, at the expense of 3 change-sites which are quite far apart. Fixes: dc5b8d7 ("btrfs: use proxmox-boot-tool to sync ESPs for RAID installs") Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com> --- tested minimally with a vm with a single disk booted with a efi-disk without enrolled keys - as this is what broke for me. Proxmox/Install.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Proxmox/Install.pm b/Proxmox/Install.pm index cb6c502..f673604 100644 --- a/Proxmox/Install.pm +++ b/Proxmox/Install.pm @@ -751,6 +751,7 @@ sub extract_data { my ($swapfile, $rootdev, $datadev); my ($use_zfs, $use_btrfs) = (0, 0); + my $btrfs_uuid; my $filesys = Proxmox::Install::Config::get_filesys(); my $hdsize = Proxmox::Install::Config::get_hdsize(); @@ -1125,6 +1126,9 @@ sub extract_data { die "unable to detect FS UUID" if !defined($fsuuid); + # needed for /etc/kernel/cmdline when making the system bootable. + $btrfs_uuid = $fsuuid; + my $btrfs_opts = Proxmox::Install::Config::get_btrfs_opt(); my $mountopts = 'defaults'; @@ -1333,6 +1337,11 @@ _EOD file_write_all("$targetdir/etc/kernel/cmdline", "root=ZFS=$zfs_pool_name/ROOT/$zfs_root_volume_name boot=zfs $target_cmdline\n"); } + if ($use_btrfs) { + # add root= option to /etc/kernel/cmdline as well (for systemd-boot+btrfs) + file_write_all("$targetdir/etc/kernel/cmdline", "root=UUID=$btrfs_uuid $target_cmdline\n"); + } + # Always write zfs module parameter - even if the user did not select ZFS-on-root. # It still makes sense to provide a sensible default for zfs_arc_max, in case a # separate zfs pool is created afterwards. -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel