chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f9ad8f7
)
mount: split adding of extras from mount_load()
author
Michal Schmidt
<mschmidt@redhat.com>
Thu, 28 Jun 2012 23:47:24 +0000
(
01:47
+0200)
committer
Michal Schmidt
<mschmidt@redhat.com>
Fri, 29 Jun 2012 00:04:30 +0000
(
02:04
+0200)
src/core/mount.c
patch
|
blob
|
history
diff --git
a/src/core/mount.c
b/src/core/mount.c
index 6b358862ea828a7e569dcb6a183d7be4cd1bbc26..5364b5dd7c34afe79401f2ff3afb8750aab2aa64 100644
(file)
--- a/
src/core/mount.c
+++ b/
src/core/mount.c
@@
-537,68
+537,96
@@
static int mount_verify(Mount *m) {
return 0;
}
return 0;
}
-static int mount_
load(Unit *u
) {
-
Mount *m = MOUNT(u
);
+static int mount_
add_extras(Mount *m
) {
+
Unit *u = UNIT(m
);
int r;
int r;
- assert(u);
- assert(u->load_state == UNIT_STUB);
-
- if ((r = unit_load_fragment_and_dropin_optional(u)) < 0)
+ r = unit_add_exec_dependencies(u, &m->exec_context);
+ if (r < 0)
return r;
return r;
- /* This is a new unit? Then let's add in some extras */
- if (u->load_state == UNIT_LOADED) {
- if ((r = unit_add_exec_dependencies(u, &m->exec_context)) < 0)
- return r;
-
- if (UNIT(m)->fragment_path)
- m->from_fragment = true;
+ if (UNIT(m)->fragment_path)
+ m->from_fragment = true;
+ if (!m->where) {
+ m->where = unit_name_to_path(u->id);
if (!m->where)
if (!m->where)
- if (!(m->where = unit_name_to_path(u->id)))
- return -ENOMEM;
-
- path_kill_slashes(m->where);
+ return -ENOMEM;
+ }
- if (!UNIT(m)->description)
- if ((r = unit_set_description(u, m->where)) < 0)
- return r;
+ path_kill_slashes(m->where);
- if ((r = mount_add_device_links(m)) < 0)
+ if (!UNIT(m)->description) {
+ r = unit_set_description(u, m->where);
+ if (r < 0)
return r;
return r;
+ }
- if ((r = mount_add_mount_links(m)) < 0)
- return r;
+ r = mount_add_device_links(m);
+ if (r < 0)
+ return r;
- if ((r = mount_add_socket_links(m)) < 0)
- return r;
+ r = mount_add_mount_links(m);
+ if (r < 0)
+ return r;
- if ((r = mount_add_swap_links(m)) < 0)
- return r;
+ r = mount_add_socket_links(m);
+ if (r < 0)
+ return r;
- if ((r = mount_add_path_links(m)) < 0)
- return r;
+ r = mount_add_swap_links(m);
+ if (r < 0)
+ return r;
-
r = mount_add_requires_mounts
_links(m);
-
if (r < 0)
-
return r;
+
r = mount_add_path
_links(m);
+ if (r < 0)
+ return r;
- if ((r = mount_add_automount_links(m)) < 0)
- return r;
+ r = mount_add_requires_mounts_links(m);
+ if (r < 0)
+ return r;
+
+ r = mount_add_automount_links(m);
+ if (r < 0)
+ return r;
+
+ r = mount_add_quota_links(m);
+ if (r < 0)
+ return r;
- r = mount_add_quota_links(m);
+ if (UNIT(m)->default_dependencies) {
+ r = mount_add_default_dependencies(m);
if (r < 0)
return r;
if (r < 0)
return r;
+ }
- if (UNIT(m)->default_dependencies)
-
if ((r = mount_add_default_dependencies(m))
< 0)
-
return r;
+ r = unit_add_default_cgroups(u);
+
if (r
< 0)
+ return r;
- if ((r = unit_add_default_cgroups(u)) < 0)
- return r;
+ r = mount_fix_timeouts(m);
+ if (r < 0)
+ return r;
+
+ return 0;
+}
+
+static int mount_load(Unit *u) {
+ Mount *m = MOUNT(u);
+ int r;
+
+ assert(u);
+ assert(u->load_state == UNIT_STUB);
+
+ r = unit_load_fragment_and_dropin_optional(u);
+ if (r < 0)
+ return r;
- mount_fix_timeouts(m);
+ /* This is a new unit? Then let's add in some extras */
+ if (u->load_state == UNIT_LOADED) {
+ r = mount_add_extras(m);
+ if (r < 0)
+ return r;
}
return mount_verify(m);
}
return mount_verify(m);