systemd should sync disks, before killing all processes on shutdown
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
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 |
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!