[Bug 1838329] Re: Cryptswap periodically fails to mount at boot due to missing a udev notification
Dan Streetman
1838329 at bugs.launchpad.net
Wed Jul 8 17:46:52 UTC 2020
> Does the Groovy bug task status need fixing?
The g MR is open and linked in this bug; I prefer to leave that up to
@rbalint for the devel release, I'm not sure if he wants to take the
patches or do a merge of newer systemd later.
> But if your trivial patch in comment 7 works, wouldn't that be better
for an SRU?
I'm not convinced it would work (it needs to lock the parent device if
the target is a partition), and it wouldn't help with cryptsetup other
than swap. Hence the proper, complete, upstream patch series is
required.
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1838329
Title:
Cryptswap periodically fails to mount at boot due to missing a udev
notification
Status in systemd:
New
Status in systemd package in Ubuntu:
New
Status in systemd source package in Bionic:
New
Status in systemd source package in Focal:
In Progress
Status in systemd source package in Groovy:
New
Bug description:
[impact]
systems using cryptsetup-based encrypted swap may hang during boot due
to udevd missing the notification that swap has been setup on the
newly created swap device.
[test case]
see original description, and reproduction is intermittent based on
timing
[regression potential]
any regression would likely occur during, or after, boot when creating
an encrypted swap device and/or while waiting to activate the new swap
device. Regressions may cause failure to correctly enable swap and/or
hung boot waiting for the swap device.
[scope]
this was (potentially) fixed upstream with PR 15836, which is not yet
included in any upstream release, so this is needed in all releases,
including groovy.
also note while the upstream bug is closed, and code review seems to
indicate this *should* fix this specific issue, there are some
comments in the upstream bug indicating it may not completely solve
the problem, although there is no further debug of the new reports.
[original description]
On some systems, cryptsetup-based encrypted swap partitions cause
systemd to get stuck at boot. This is a timing-sensitive Heisenbug, so
the rate of occurrence varies from one system to another. Some
hardware will not experience the issue at all, others will only
occasionally experience the issue, and then there are the unlucky who
are unable to boot at all, no matter how many times they restart.
The workaround is for the cryptsetup-generator to generate cryptswap
service entries that call `udevadm trigger` after `mkswap`. This will
ensure that the udev event is triggered, so that systemd is notified
that the encrypt swap partition is ready to activate. This patch has
already been submitted upstream to systemd, but it was not accepted
because it is a workaround for the side effect of systemd not seeing
the udev event upon creating the swap partition.
To manage notifications about this bug go to:
https://bugs.launchpad.net/systemd/+bug/1838329/+subscriptions
More information about the Ubuntu-sponsors
mailing list