Summary: | swap + nofail = timeout and dependency failed | ||
---|---|---|---|
Product: | systemd | Reporter: | Marcos Mello <marcosfrm> |
Component: | general | Assignee: | systemd-bugs |
Status: | RESOLVED FIXED | QA Contact: | systemd-bugs |
Severity: | normal | ||
Priority: | medium | ||
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Marcos Mello
2014-11-20 12:44:19 UTC
Feature, more than a bug... The timeout is necessary because of event-based boot. Traditionally sysvinit would try swapon at some "random" point, which almost always worked because bootup was slow enough for devices to show up. With systemd this is different, because it is often faster than device discovery so it must pick some explicit timeout and actually wait. As for the warning: systemd.mount(5) only says that the boot will be continued. But it is still expected that the device will be there, it just is not important enough to stop boot without it. I'll close this, since I don't think there's much we can do here: in some applications it would be nicer to be quieter, in other cases it would nicer to be more verbose, so we're never going to fit all cases. I think the current approach strikes a good balance. I am reporting because I am almost sure on openSUSE 13.1 (208 + lots of -stable patches) it did not show timeout, nor warning. Too lazy to install it again and test though. Anyway, system still boots. I can remove the offending line. Well, changing 'nofail' to 'defaults' does not make difference. So 'nofail' is a NOP. That is not expected. man swapon -e, --ifexists *Silently* skip devices that do not exist. The /etc/fstab mount option nofail may also be used to skip non-existing device. man systemd.mount If nofail is given, this mount will be only wanted, not required, by the local-fs.target. This means that the boot will continue even if this mount point is not mounted successfully. Option fail has the opposite meaning and is the default. but: systemd-analyze dump -> Unit swap.target: ... Requires: dev-disk-by\x2duuid-8872f836\x2d3676\x2d49a9\x2dafdc\x2d6eb790a13d9f.swap ? Darn. swap.target has both Requires and Wants on the same unit. This does not look right. Thanks! http://cgit.freedesktop.org/systemd/systemd/commit/?id=deb6120920 also applies to systemd.swap, no? Ping? |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.