systemd should sync disks, before killing all processes on shutdown
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| systemd (Ubuntu) |
Undecided
|
Unassigned | ||
| Xenial |
Undecided
|
Unassigned |
Bug Description
[Impact]
* systemd-shutdown binary is executed to complete system shutdown. In xenial, it calls sync() after killing all processes, and not before killing them. This means that processes are racing the SIGKILL/TERM timeouts to sync all IO to disk. To mitigate this race condition, and make the shutdown process more reliable the sync() should also happen before process killing spree starts.
[Fix]
Backport upstream commit https:/
[Test Case]
* Make sure systems still shuts down, including e.g. root on raid.
[Regression Potential]
* Shutdowns may appear to be slower due to two sync() calls instead of one
* However total shutdown time should not be impacted much, as there really should not be much additional IO caused by killing all processes.
Changed in systemd (Ubuntu): | |
status: | New → Fix Released |
tags: | added: id-59dba43d6e5b35acb9bbee0b |
Changed in systemd (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in systemd (Ubuntu Xenial): | |
status: | In Progress → Fix Committed |
tags: | added: verification-needed verification-needed-xenial |
Dimitri John Ledkov (xnox) wrote : | #2 |
As seen in autopkgtests, reboots are working correctly with filesystems synced to disk on shutdown, without regressions in shutdown / reboot. Thus this is sufficient to verify that the disks are still synced on shutdown.
tags: |
added: verification-done verification-done-xenial removed: verification-needed verification-needed-xenial |
Launchpad Janitor (janitor) wrote : | #3 |
This bug was fixed in the package systemd - 229-4ubuntu21.2
---------------
systemd (229-4ubuntu21.2) xenial; urgency=medium
[ Dimitri John Ledkov ]
* udev: Mark ndb devices as inactive until connected. (LP: #696435)
* networkd: in dhcp, change UseMTU default to true, to accept DHCP provided MTU by default.
(LP: #1717471)
* sysctl: apply parameters in-order, instead of randomly. (LP: #1718444)
* networkd: apply promote_
(LP: #1721223)
* shutdown: sync filesystems, before going into a killing spree.
(LP: #1722481)
* sysctl: do not fail, when cannot apply sysctl changes due to read-only sysfs in containers.
(LP: #1734409)
* networkd,
(LP: #1737570)
[ David Glasser ]
* journald: don't reduce BurstRateLimit on low disk space (LP: #1732803)
-- Dimitri John Ledkov <email address hidden> Wed, 21 Feb 2018 13:46:37 +0000
Changed in systemd (Ubuntu Xenial): | |
status: | Fix Committed → Fix Released |
The verification of the Stable Release Update for systemd has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.
Hello Dimitri, or anyone else affected,
Accepted systemd into xenial-proposed. The package will build now and be available at https:/ /launchpad. net/ubuntu/ +source/ systemd/ 229-4ubuntu21. 2 in a few hours, and then in the -proposed repository.
Please help us by testing this new package. See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification- needed- xenial to verification- done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification- failed- xenial. In either case, without details of your testing we will not be able to proceed.
Further information regarding the verification process can be found at https:/ /wiki.ubuntu. com/QATeam/ PerformingSRUVe rification . Thank you in advance!