[pve-devel] [PATCH kernel-meta] fix #2403: exclude initrd entries from /proc/cmdline

Oguz Bektas o.bektas at proxmox.com
Tue Oct 15 15:22:16 CEST 2019


if we fallback to /proc/cmdline, it can include the booted initrd.

to avoid loader entries with (sometimes even multiple) initrd lines,
we have to parse them out.

Signed-off-by: Oguz Bektas <o.bektas at proxmox.com>
---
 efiboot/zz-pve-efiboot | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/efiboot/zz-pve-efiboot b/efiboot/zz-pve-efiboot
index 4756555..5a84af2 100755
--- a/efiboot/zz-pve-efiboot
+++ b/efiboot/zz-pve-efiboot
@@ -50,7 +50,8 @@ update_esps() {
 		CMDLINE="$(cat /etc/kernel/cmdline)"
 	else
 		warn "No /etc/kernel/cmdline found - falling back to /proc/cmdline"
-		CMDLINE="$(cat /proc/cmdline)"
+		# remove initrd entries
+		CMDLINE="$(cat /proc/cmdline | awk '{gsub(/initrd=([0-9a-zA-Z\\.-])*\s/,x)}1')"
 	fi
 
 	loop_esp_list update_esp_func
-- 
2.20.1




More information about the pve-devel mailing list