softlockup DoS causes systemd-journald.service to abort with SIGABORT
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Artful |
Opinion
|
High
|
Balint Reczey | ||
Bionic |
Fix Released
|
High
|
Unassigned |
Bug Description
I was running the new stress-ng softlockup stressor and observed that systemd-journald gets killed with an abort and this corrupts the systemd journal.
How to reproduce:
git clone git://kernel.
cd stress-ng
make clean; make
sudo ./stress-ng --softlockup 0 -t 360 -v
..and wait for 360 seconds. dmesg shows the following, 100% reproduceable:
[ 875.310331] systemd[1]: systemd-
[ 875.310740] systemd[1]: systemd-
[ 875.327289] systemd[1]: systemd-
[ 875.327666] systemd[1]: systemd-
[ 875.327686] systemd[1]: systemd-
[ 875.327917] systemd[1]: systemd-
[ 875.327954] systemd[1]: Stopped Network Time Synchronization.
[ 875.328845] systemd[1]: Starting Network Time Synchronization...
[ 875.525071] systemd[1]: Started Network Time Synchronization.
[ 875.539619] systemd[1]: systemd-
[ 875.544257] systemd-
Changed in systemd (Ubuntu): | |
importance: | Undecided → High |
tags: | added: rls-aa-incoming |
Changed in systemd (Ubuntu Artful): | |
assignee: | Canonical Foundations Team (canonical-foundations) → Balint Reczey (rbalint) |
tags: | added: id-597a8343fc8685288751db7a |
Changed in systemd (Ubuntu Bionic): | |
status: | Confirmed → Fix Committed |
tags: | added: id-5ab94cf1ab21d3c7e6eee4ec |
The watchdogs are by design. The unclean journal may not be. OTOH if this only happens with the ephemeral journal in /run, the impact is minor. We should check whether the unclean journal problem is reproducible with /var/log/journal.