Bug 752291

Summary: systemd boot fails and drops to rescue mode when mounts fail
Product: [openSUSE] openSUSE 12.1 Reporter: Daniel Morris <danielm>
Component: BasesystemAssignee: Frederic Crozat <fcrozat>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: fcrozat
Version: Final   
Target Milestone: ---   
Hardware: 64bit   
OS: openSUSE 12.1   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: output from dmesg with systemd debug flags set
/etc/fstab as requested

Description Daniel Morris 2012-03-14 16:23:55 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) konqueror/4.7.2 Safari/534.34

Similar to https://bugzilla.novell.com/show_bug.cgi?id=731480, I have an issue with my desktop system.

I've always mounted the opensuse iso images through /etc/fstab
(locally networked machines then use these via vsftpd too) like:-

/mirrors/torrentable/openSUSE-12.1-DVD-x86_64.iso      /mirrors/opensuse-121 iso9660 loop,uid=danielm,gid=users,ro  0 2

This however stops the system booting, reporting

Dependency failed. Aborted start of File System Check on /mirrors/tor...
Dependency failed. Aborted start of /mirrors/opensuse-121
Welcome to emergency mode. use "systemctl default" or ^D to activate default mode.

I guess that there is a race condition with the underlying mount point still being checked as systemd tries to do things in parallel. It works well post boot, but I have to comment the lines out in /etc/fstab to avoid needing console input.

It seems (for the other bug too) that rather than "grumble and carry on" the system bails for operator input if a mount fails, which is not helpful if the machine's power is interrupted (this used to happen a lot, due to a flaky photostat machine from the 80's in another office tripping the circuit breakers!).


Reproducible: Always

Steps to Reproduce:
1. add a loopback mount to /etc/fstab using / as the mountpoint
2. reboot
3.
Actual Results:  
I'm "Welcomed" to emergency mode

Expected Results:  
mount deferred for a few seconds and retried, or a big moan dropped into the boot log and the file system left unmounted. 

This used to work from SuSE Linux 8.something through to 11.3. Also happens
with 32 bit install on the laptop, and for a hibernated M$ partition.
Comment 1 Daniel Morris 2012-03-14 16:26:42 UTC
I meant to say that I've verified this with what I belive are all applicable maintenance patches applied:-

# rpm -qa --last |grep systemd
systemd-sysvinit-37-3.8.1                     Mon Mar  5 08:47:44 2012
systemd-37-3.8.1                              Mon Mar  5 08:47:41 2012
systemd-presets-branding-openSUSE-0.1.0-6.2.1 Fri Nov 18 22:44:12 2011
Comment 2 Kun Kun Zhang 2012-03-15 02:00:19 UTC
Hi,could you please look at this?I am not sure whether it is right to assign it to you.Feel free to reassign it whenever necessary.Thank you.
Comment 3 Daniel Morris 2012-03-15 08:40:27 UTC
I meant to add that I believe I am running the latest maintenance updates from systemd:-

# rpm -qa --last |grep systemd
systemd-sysvinit-37-3.8.1                     Mon Mar  5 08:47:44 2012
systemd-37-3.8.1                              Mon Mar  5 08:47:41 2012
systemd-presets-branding-openSUSE-0.1.0-6.2.1 Fri Nov 18 22:44:12 2011
Comment 4 Daniel Morris 2012-03-15 08:42:10 UTC
Doh! Konqueror really did save before dying. I'll use PgUp next time...
Comment 5 Frederic Crozat 2012-03-15 08:54:36 UTC
could you attach full /etc/fstab and dmesg output, after booting with "systemd.log_level=debug systemd.log_target=kmsg" ?
Comment 6 Daniel Morris 2012-03-15 22:52:05 UTC
Created attachment 481723 [details]
output from dmesg with systemd debug flags set

this was done from 32bit laptop, exhibits the same issue, also 12.1 with all updates.
Comment 7 Daniel Morris 2012-03-15 22:56:12 UTC
Created attachment 481728 [details]
/etc/fstab as requested

from 32bit laptop, showing same issue
Comment 8 Frederic Crozat 2012-08-10 10:46:05 UTC
the bug is not in mounting the iso as loopback but caused by the last parameter in fstab set to "2"  ie fs_passno, which controls when fsck should be used. And in this case, fsck on a iso file isn't supported (it should be just ignored but it isn't atm)
Comment 9 Frederic Crozat 2013-03-12 11:00:38 UTC
This bug has been fixed in 12.3. Closing (we can't improve the fs_passno issue for older release, but iso mounting works).