mkinitrd unification across distributions
 help / color / mirror / Atom feed
From: Harald Hoyer <harald-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: vgoyal-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	bhe-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	chaowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] dracut systemd cmdline service fix
Date: Wed, 29 May 2013 10:38:45 +0200	[thread overview]
Message-ID: <51A5BE95.3070303@redhat.com> (raw)
In-Reply-To: <51A5614C.8090606-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>

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-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org 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-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
>>> ---
>>>  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.

> 
> 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

  parent reply	other threads:[~2013-05-29  8:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-16  5:15 [PATCH] dracut systemd cmdline service fix dyoung-H+wXaHxf7aLQT0dZR+AlfA
     [not found] ` <51946b65.1SfwJA0QAkY6Gb83%dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-28 10:53   ` Harald Hoyer
     [not found]     ` <51A48CC2.40500-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-29  2:00       ` Dave Young
     [not found]         ` <51A5614C.8090606-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-29  8:38           ` Harald Hoyer [this message]
     [not found]             ` <51A5BE95.3070303-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-29  9:28               ` Dave Young
2013-05-30  5:07       ` Dave Young
     [not found]         ` <51A6DEA3.4060505-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-30  6:52           ` Harald Hoyer
     [not found]             ` <51A6F742.5030400-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-05-30  8:47               ` Dave Young

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51A5BE95.3070303@redhat.com \
    --to=harald-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
    --cc=bhe-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=chaowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=vgoyal-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox