[Bug 1838329] Re: Cryptswap periodically fails to mount at boot due to missing a udev notification
Dan Streetman
1838329 at bugs.launchpad.net
Mon Jul 6 21:46:21 UTC 2020
** Description changed:
+ [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.
** Tags removed: bionic ddstreet disco eoan
** Also affects: systemd (Ubuntu Bionic)
Importance: Undecided
Status: New
** Also affects: systemd (Ubuntu Groovy)
Importance: High
Status: Fix Released
** Changed in: systemd (Ubuntu Groovy)
Status: Fix Released => In Progress
** Changed in: systemd (Ubuntu Groovy)
Status: In Progress => New
--
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