Summary: | Requires doesn't behave the same for mount units at boot time | ||
---|---|---|---|
Product: | systemd | Reporter: | Mathieu Bridon <bochecha> |
Component: | general | Assignee: | Lennart Poettering <lennart> |
Status: | RESOLVED NOTABUG | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | evg |
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Mathieu Bridon
2012-01-05 23:07:22 UTC
So, this is actually a local configuration problem: Requires= needs to be combined with After= to be race-free. Note that requirement and ordering dependencies are orthogonal in systemd, and hence if a unit is required but not ordered against the job for the required unit might or might not complete first, and hence the effective result of it is not defined. This is actually documented in the man pages very explicitly these days. Closing hence. (And sorry for letting this hang in bugzilla for so long) I don't think this is an ordering issue. As I mentioned in the original description, the .mount unit does not exist at all on the system. Therefore, I would expect a service which Requires it to not get started. As I mentioned, this is what happens when manually starting the service, but not when the service gets started at boot time. Of course, this was a long time ago and maybe now it works. I'll have to test it again with a more recent systemd version. I'll try and do it ASAP. Yeah, please test an file a new bug on github if this is still an issue, even if combined with After=. Thanks! |
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.