Franck Bui changed bug 980324
What Removed Added
CC   fbui@suse.com
Flags   needinfo?(arvidjaar@gmail.com)

Comment # 8 on bug 980324 from
(In reply to Andrei Borzenkov from comment #1)

Thanks a lot Andrei for your analysis which is correct I think.

After looking at the code there's indeed nothing that makes sure that all
pending jobs are finished before switching to the new rootfs.

And as you said, when switching to the new rootfs, the current state of systemd
is serialized and deserialized once the switch happens. And I think during this
transition, all the pending jobs are simply forgotten.

initrd-udevadm-cleanup-db.service gives simply enough time for the transaction
to completely finish, but as you said, this is just a side effect and even if
this service was incorrectly removed and will be restored during the next
update (see bug #976766) which should address this a separate issue.

Your fix looks to work but there's also the "--no-block" option which is used
in initrd-cleanup.service when isolating initrd-switch-root.target that might
look suspicious since it prevents systemd to wait for the isolation of the
target to fully complete before starting initrd-switch-root.service.

I think we should discuss this with upstream. Maybe you should submit your fix
through a pull-request to start a discussion on this or open an issue via
github.

WDYT ?


You are receiving this mail because: