[Bug 832220] New: systemd-fsck loops forever when errors can't be fixed automatically, makes system unbootable
https://bugzilla.novell.com/show_bug.cgi?id=832220 https://bugzilla.novell.com/show_bug.cgi?id=832220#c0 Summary: systemd-fsck loops forever when errors can't be fixed automatically, makes system unbootable Classification: openSUSE Product: openSUSE Factory Version: 13.1 Milestone 3 Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: P5 - None Component: Basesystem AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: lbeltrame@kde.org QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1575.0 Safari/537.36 SUSE/30.0.1575.0 If a FS has errors, systemd will fsck it before mounting it. However, if a FS contains errors that can't be fixed automatically (such as detached inodes for ext4), it will error out ("UNEXPECTED INCONSISTENCY. RUN fsck MANUALLY.") and systemd will keep on trying to fsck it, failing every time and stopping the boot. Additionally, systemd will start the emergency shell, but due to this loop it cannot be accessed. The only solution is to clean the FS from somewhere else (e.g. live CD) and only then systemd will make the system bootable. Reproducible: Always Steps to Reproduce: 1. Start the system with a FS with errors 2. Wait for systemd to mount it (e.g. local FS target) Actual Results: systemd keeps on looping its fsck, failing. Expected Results: systemd should stop attempting the fsck and drop to the emergency shell. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c
Luca Beltrame
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c
Alberto Planas Dominguez
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c
Frederic Crozat
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c1
systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c2
--- Comment #2 from systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c4
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c5
systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c6
Mark Gray
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c7
--- Comment #7 from systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c8
--- Comment #8 from systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c9
--- Comment #9 from systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c10
--- Comment #10 from systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c11
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c12
systemd maintainers
As was found in bnc#851993, if rsyslog service is active it may be impossible to enter emergency shell. The reason is, rsyslog.service requires basic.target which requires sysinit.target which conflicts with emergency.{target,service}. So if syslog.service is triggered by connection to syslog.socket it tries to start basic.target which cancels pending emergency shell.
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c13
systemd maintainers
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c14
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c15
--- Comment #15 from Andrey Borzenkov
Maybe we should add the line
# Don't allow logging for emergency Conflicts=emergency.target
to rsyslog.service, syslog-ng.service, and syslogd.service
This won't fix anything. syslog will be triggered by syslog.socket and will cancel running emergency shell. The correct workaround is in my repo (see bnc#852021#c4). It makes sure syslog.socket is stopped when emergency.target is entered. This was also confirmed to fix this problem by other users. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c16
--- Comment #16 from Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c17
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c18
--- Comment #18 from Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c19
--- Comment #19 from Andrey Borzenkov
I'm wondering if both patches are required
Well ... without 0001-core-replace-OnFailureIsolate-setting-by-a-more-gene.patch there is small window after emergency.target is requested until syslog.socket is stopped. If syslog is attempted to be started exactly at this moment, it will cancel emergency.target transaction. (In reply to comment #18)
The patch 001-core-replace-OnFailureIsolate-setting-by-a-more-gene.patch does break my workaround for agetty get fooled by plymouth, compare with bnc#774126.
Now plymouth does not remove the lock on the termios structure from /dev/ttyS0 regardless how long agetty waits on.
I honestly do not see how they could be related. This patch never even kicks in in normal case. But note that it is upstream so you will get it in next systemd version anyway. If there are issues with it, they need to be fixed. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c
Andrey Borzenkov
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c20
--- Comment #20 from Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c21
--- Comment #21 from Andrey Borzenkov
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c22
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c23
Andrey Borzenkov
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c24
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c25
Dave Haefner
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c26
Dr. Werner Fink
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c27
--- Comment #27 from Maciej Pilichowski
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c28
--- Comment #28 from Dave Haefner
(In reply to comment #25)
Why you have reset the assignee as well as the hardware by your first comment here? Are you sure that the initial reporter does use a 32bit system?
My bad. When I realized what I had done I tried to change it back and probably only made it worse. It is interesting though that I was allowed to make these changes as opposed to just adding my system info...
Beside this you may give that latest systemd-210 from build system a try
According to "systemd --version" I have 208 right now. Unfortunately I will not be able to do testing on 210 for a bit, but when I do I will check back. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=832220
https://bugzilla.novell.com/show_bug.cgi?id=832220#c29
Felix Miata
http://bugzilla.novell.com/show_bug.cgi?id=832220
Tomáš Chvátal
http://bugzilla.novell.com/show_bug.cgi?id=832220
Tomáš Chvátal
participants (1)
-
bugzilla_noreply@novell.com