From dda971e5260bd2401e79461135e6c44af01da568 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Thu, 17 Apr 2014 18:55:31 -0700 Subject: [PATCH 2/2] Revert "Add flag to toggle hostonly cmdline storing in the initramfs" This reverts commit ab9457efd78ff74c654b4123956cdbd131935066. --- dracut.8.asc | 6 ------ dracut.conf.5.asc | 3 --- dracut.sh | 18 +++------------- modules.d/90crypt/module-setup.sh | 6 ++---- modules.d/90dmraid/module-setup.sh | 6 ++---- modules.d/90lvm/module-setup.sh | 6 ++---- modules.d/90mdraid/module-setup.sh | 6 ++---- modules.d/95rootfs-block/module-setup.sh | 37 ++++++++++++-------------------- 8 files changed, 25 insertions(+), 63 deletions(-) diff --git a/dracut.8.asc b/dracut.8.asc index 14ce26b..583a6dd 100644 --- a/dracut.8.asc +++ b/dracut.8.asc @@ -300,12 +300,6 @@ provide a valid _/etc/fstab_. **-N, --no-hostonly**:: Disable Host-Only mode -**--hostonly-cmdline**: - Store kernel command line arguments needed in the initramfs - -**--no-hostonly-cmdline**: - Do not store kernel command line arguments needed in the initramfs - **--persistent-policy** __:: Use __ to address disks and partitions. __ can be any directory name found in /dev/disk. diff --git a/dracut.conf.5.asc b/dracut.conf.5.asc index be62da9..5c94118 100644 --- a/dracut.conf.5.asc +++ b/dracut.conf.5.asc @@ -76,9 +76,6 @@ Configuration files must have the extension .conf; other extensions are ignored. Host-Only mode: Install only what is needed for booting the local host instead of a generic host and generate host-specific configuration. -*hostonly_cmdline*"__{yes|no}__":: - If set, store the kernel command line arguments needed in the initramfs - *persistent_policy=*"____":: Use __ to address disks and partitions. __ can be any directory name found in /dev/disk. diff --git a/dracut.sh b/dracut.sh index 1899db9..1b33165 100755 --- a/dracut.sh +++ b/dracut.sh @@ -137,10 +137,6 @@ Creates initial ramdisk images for preloading modules -H, --hostonly Host-Only mode: Install only what is needed for booting the local host instead of a generic host. -N, --no-hostonly Disables Host-Only mode - --hostonly-cmdline Store kernel command line arguments needed - in the initramfs - --no-hostonly-cmdline Do not store kernel command line arguments needed - in the initramfs --persistent-policy [POLICY] Use [POLICY] to address disks and partitions. POLICY can be any directory name found in /dev/disk. @@ -492,12 +488,9 @@ while :; do -f|--force) force=yes;; --kernel-only) kernel_only="yes"; no_kernel="no";; --no-kernel) kernel_only="no"; no_kernel="yes";; - --print-cmdline) - print_cmdline="yes"; hostonly_l="yes"; kernel_only="yes"; no_kernel="yes";; - --early-microcode) - early_microcode_l="yes";; - --no-early-microcode) - early_microcode_l="no";; + --print-cmdline) print_cmdline="yes"; hostonly_l="yes"; kernel_only="yes"; no_kernel="yes";; + --early-microcode) early_microcode_l="yes";; + --no-early-microcode) early_microcode_l="no";; --strip) do_strip_l="yes";; --nostrip) do_strip_l="no";; --prelink) do_prelink_l="yes";; @@ -524,10 +517,6 @@ while :; do hostonly_l="yes" ;; -N|--no-hostonly|--no-host-only) hostonly_l="no" ;; - --hostonly-cmdline) - hostonly_cmdline_l="yes" ;; - --no-hostonly-cmdline) - hostonly_cmdline_l="no" ;; --persistent-policy) persistent_policy_l="$2"; PARMS_TO_STORE+=" '$2'"; shift;; --fstab) use_fstab_l="yes" ;; @@ -766,7 +755,6 @@ stdloglvl=$((stdloglvl + verbosity_mod_l)) [[ $prefix_l ]] && prefix=$prefix_l [[ $prefix = "/" ]] && unset prefix [[ $hostonly_l ]] && hostonly=$hostonly_l -[[ $hostonly_cmdline_l ]] && hostonly_cmdline=$hostonly_cmdline_l [[ $persistent_policy_l ]] && persistent_policy=$persistent_policy_l [[ $use_fstab_l ]] && use_fstab=$use_fstab_l [[ $mdadmconf_l ]] && mdadmconf=$mdadmconf_l diff --git a/modules.d/90crypt/module-setup.sh b/modules.d/90crypt/module-setup.sh index 5707404..21d49c4 100755 --- a/modules.d/90crypt/module-setup.sh +++ b/modules.d/90crypt/module-setup.sh @@ -51,10 +51,8 @@ cmdline() { # called by dracut install() { - if [[ $hostonly_cmdline == "yes" ]]; then - cmdline >> "${initdir}/etc/cmdline.d/90crypt.conf" - echo >> "${initdir}/etc/cmdline.d/90crypt.conf" - fi + cmdline >> "${initdir}/etc/cmdline.d/90crypt.conf" + echo >> "${initdir}/etc/cmdline.d/90crypt.conf" inst_multiple cryptsetup rmdir readlink umount inst_script "$moddir"/cryptroot-ask.sh /sbin/cryptroot-ask diff --git a/modules.d/90dmraid/module-setup.sh b/modules.d/90dmraid/module-setup.sh index aebb28d..d3888a4 100755 --- a/modules.d/90dmraid/module-setup.sh +++ b/modules.d/90dmraid/module-setup.sh @@ -65,10 +65,8 @@ cmdline() { install() { local _i - if [[ $hostonly_cmdline == "yes" ]]; then - cmdline >> "${initdir}/etc/cmdline.d/90dmraid.conf" - echo >> "${initdir}/etc/cmdline.d/90dmraid.conf" - fi + cmdline >> "${initdir}/etc/cmdline.d/90dmraid.conf" + echo >> "${initdir}/etc/cmdline.d/90dmraid.conf" inst_multiple dmraid inst_multiple -o kpartx diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh index 5b810b9..781dfa4 100755 --- a/modules.d/90lvm/module-setup.sh +++ b/modules.d/90lvm/module-setup.sh @@ -50,10 +50,8 @@ install() { inst lvm - if [[ $hostonly_cmdline == "yes" ]]; then - cmdline >> "${initdir}/etc/cmdline.d/90lvm.conf" - echo >> "${initdir}/etc/cmdline.d/90lvm.conf" - fi + cmdline >> "${initdir}/etc/cmdline.d/90lvm.conf" + echo >> "${initdir}/etc/cmdline.d/90lvm.conf" inst_rules "$moddir/64-lvm.rules" diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh index ac745d1..7d72098 100755 --- a/modules.d/90mdraid/module-setup.sh +++ b/modules.d/90mdraid/module-setup.sh @@ -70,10 +70,8 @@ install() { inst $(command -v partx) /sbin/partx inst $(command -v mdadm) /sbin/mdadm - if [[ $hostonly_cmdline == "yes" ]]; then - cmdline >> "${initdir}/etc/cmdline.d/90mdraid.conf" - echo >> "${initdir}/etc/cmdline.d/90mdraid.conf" - fi + cmdline >> "${initdir}/etc/cmdline.d/90mdraid.conf" + echo >> "${initdir}/etc/cmdline.d/90mdraid.conf" # > "${initdir}/etc/cmdline.d/95root-journaldev.conf" + + if [[ $hostonly ]]; then + for dev in "${!host_fs_types[@]}"; do + [[ ${host_fs_types[$dev]} = "reiserfs" ]] || [[ ${host_fs_types[$dev]} = "xfs" ]] || continue + rootopts=$(find_dev_fsopts "$dev") + if [[ ${host_fs_types[$dev]} = "reiserfs" ]]; then + journaldev=$(fs_get_option $rootopts "jdev") + elif [[ ${host_fs_types[$dev]} = "xfs" ]]; then + journaldev=$(fs_get_option $rootopts "logdev") + fi + + if [ -n "$journaldev" ]; then + printf "%s\n" "root.journaldev=$journaldev" >> "${initdir}/etc/cmdline.d/95root-journaldev.conf" + fi done fi -- 1.9.0