On 05/29/2013 04:38 PM, Harald Hoyer wrote: > On 05/29/2013 04:00 AM, Dave Young wrote: >> On 05/28/2013 06:53 PM, Harald Hoyer wrote: >>> On 05/16/2013 07:15 AM, dyoung@xxxxxxxxxx wrote: >>>> >>>> Kdump test failed since below commits >>>> dbfaae0e34507d2d1f3c186ffe26af3e8028b9f8 >>>> >>>> Fedora bug is here: >>>> https://bugzilla.redhat.com/show_bug.cgi?id=963159 >>>> >>>> The reason is the hooks afterwards need NEWROOT env which >>>> is set in dracut-cmdline.sh. >>>> >>>> In this case there's no files under /etc/cmdline.d/ and >>>> /lib/dracut/hooks/cmdline/. Conditions checking failed, so >>>> the cmdline service failed to startup. >>>> >>>> Fix this issue by remove the Conditions thus cmdline service >>>> always run if /etc/initrd-release exists. >>>> >>>> Signed-off-by: Dave Young <dyoung@xxxxxxxxxx> >>>> --- >>>> modules.d/98systemd/dracut-cmdline.service | 5 ----- >>>> 1 file changed, 5 deletions(-) >>>> >>>> --- dracut.orig/modules.d/98systemd/dracut-cmdline.service >>>> +++ dracut/modules.d/98systemd/dracut-cmdline.service >>>> @@ -16,11 +16,6 @@ Before=systemd-vconsole-setup.service >>>> After=systemd-journald.socket >>>> Wants=systemd-journald.socket >>>> ConditionPathExists=/etc/initrd-release >>>> -ConditionPathExistsGlob=|/etc/cmdline.d/*.conf >>>> -ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cmdline >>>> -ConditionKernelCommandLine=|rd.break=cmdline >>>> -ConditionKernelCommandLine=|resume >>>> -ConditionKernelCommandLine=|noresume >>>> >>>> [Service] >>>> Type=oneshot >>> >>> Will be fixed by setting >>> >>> Environment=DRACUT_SYSTEMD=1 >>> Environment=NEWROOT=/sysroot >>> >>> in the service files. >>> >> Hi, Harald >> >> Thanks for your fix, but I'm still worrying about below code: >> -ConditionPathExistsGlob=|/etc/cmdline.d/*.conf >> -ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cmdline >> >> Is the above Conditions 'or' or 'and' relations? >> will it just skip cmdline service in case any of the conditions do es not match? > > It is OR and it will start dracut-cmdline.service if any of the |= conditions is > matched. Good to know, it's ok then.. > >> >> If above is true then I'm still worrying about we will cause more problems. grep "inst_hook cmdline" shows a lot of stuff which is not limited to parsing /etc/cmdline.d/*.conf, such as: >> 04watchdog/module-setup.sh: inst_hook cmdline 50 "$moddir/watchdog.sh" >> 40network/module-setup.sh: inst_hook cmdline 91 "$moddir/dhcp-root.sh" >> 96securityfs/module-setup.sh: inst_hook cmdline 60 "$moddir/securityfs.sh" >> >> Even for hooks parsing cmdline, the cmdline params are not limited to /etc/cmdline.d/*.conf, they can also be specified in grub cmdline, isn't it? >> > > If anything is installed in the cmdline hook via "inst_hook cmdline" the > dracut-cmdline.service will be started because of > ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cmdline > Thanks for tell -- Thanks Dave -- To unsubscribe from this list: send the line "unsubscribe initramfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html