Mailinglist Archive: opensuse-bugs (5243 mails)

< Previous Next >
[Bug 793954] raid1 array sometimes started with one of two disks at boot (again)

https://bugzilla.novell.com/show_bug.cgi?id=793954

https://bugzilla.novell.com/show_bug.cgi?id=793954#c30


Neil Brown <nfbrown@xxxxxxxx> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEEDINFO
InfoProvider| |fcrozat@xxxxxxxx

--- Comment #30 from Neil Brown <nfbrown@xxxxxxxx> 2013-03-14 07:10:36 UTC ---
Ahh.. I might have it at last

This bug is very similar to bug 772286 which we fixed by adding
# Should-Start: udev-trigger
to /etc/init.d/boot.md.

However it seems that udev-trigger isn't a service any more. Rather there is a

systemd-udev-trigger.service

So maybe we just need to change "udev-trigger" in boot.md to
"systemd-udev-trigger". A bit of experimentation suggests that changing

# Should-Start: boot.scsidev boot.multipath udev-trigger

in /etc/init.d/boot.md to

# Should-Start: boot.scsidev boot.multipath systemd-udev-trigger

does seem to change the behaviour as I would expect. I don't have any problems
with assembling arrays (as the problem is very sensitive to particular timing
of various events) so I cannot be certain that this fixes the problem. If
someone who does experience the problem could make this change and see if it
fixes the problem, that would be great.

Frederic: apart from wanting to let you know that I'm a bit grumpy about this
name change (not your fault exactly, but I wanted to complain to someone) I
notice that the /usr/lib/systemd/system/systemd-udev-trigger.service file looks
wrong based on the man page (and a quick look at the code).
It contains:

ExecStart=/usr/bin/udevadm trigger --type=subsystems --action=add ;
/usr/bin/udevadm trigger --type=devices --action=add

However the body of "ExecStart" is not a shell script, but a command and some
args, so this passes ";" and "/usr/bin/udevadm" etc as extra args to
/usr/bin/udevadm.
For "Type=oneshot" services you are allowed multiple ExecStart, so this should
be

ExecStart=/usr/bin/udevadm trigger --type=subsystems --action=add
ExecStart=/usr/bin/udevadm trigger --type=devices --action=add

This change might also be needed for md arrays to be started properly but I'm
not 100% sure.

The upstream code has this bug. Would you follow it up with upstream, or would
you rather that I did?

--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >