[systemd-devel] [PATCH] unit: When stopping due to BindsTo=, log which unit caused it

Martin Pitt martin.pitt at ubuntu.com
Thu Feb 26 07:50:37 PST 2015


Hey Colin,

Colin Walters [2015-02-24 15:05 -0500]:
> http://cgit.freedesktop.org/systemd/systemd/commit/?id=06e97888883e2cc12eb6514e80c7f0014295f59b
> 
> broke OSTree:
> https://bugzilla.redhat.com/show_bug.cgi?id=1195761#c1
> 
> I'm likely going to carry a revert downstream until I get a chance to debug this
> more.
> 
> I suspect it's the only project carrying mounts from the initramfs, so
> the simplest may be to just mark them.

I can reproduce this pretty easily, by breaking in the initrd, doing a
bind mount on /root/mnt, and booting. This will trigger that effect.

So I guess that's pretty serious; should we revert that upstream until
we figure out a better solution?

IMHO it would be prudent to skip adding the BindsTo= if at the time of
creating the .mount unit the backing .device unit doesn't actually
exist. In that case it's a mount which isn't managed by systemd, and
we shouldn't touch it. We mostly want this BindsTo= for mounts where
the .device units *do* exist, so that when they go away we can clean
up the mount (mostly for hotpluggable devices and removable media).
I'll have a deeper look ASAP.

Martin

-- 
Martin Pitt                        | http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)


More information about the systemd-devel mailing list