summaryrefslogtreecommitdiff
path: root/src/fstab-generator/fstab-generator.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-03-07 02:39:59 +0100
committerLennart Poettering <lennart@poettering.net>2014-03-07 02:40:24 +0100
commit5ecdcf41cbce38c44b399993cb1c356280e0bafd (patch)
tree45553876ac680e30da256d1e3425285187ad9361 /src/fstab-generator/fstab-generator.c
parenta873c5bdf253057b8cd39a7e2affdd4ff8752827 (diff)
fstab-generator: the root partition is not optional
Diffstat (limited to 'src/fstab-generator/fstab-generator.c')
-rw-r--r--src/fstab-generator/fstab-generator.c32
1 files changed, 13 insertions, 19 deletions
diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c
index 57d0a53f28..34cd720517 100644
--- a/src/fstab-generator/fstab-generator.c
+++ b/src/fstab-generator/fstab-generator.c
@@ -189,6 +189,7 @@ static int add_mount(
return 0;
if (path_equal(where, "/")) {
+ /* The root disk is not an option */
automount = false;
noauto = false;
nofail = false;
@@ -219,9 +220,7 @@ static int add_mount(
source);
if (post && !noauto && !nofail && !automount)
- fprintf(f,
- "Before=%s\n",
- post);
+ fprintf(f, "Before=%s\n", post);
if (passno != 0) {
r = generator_write_fsck_deps(f, arg_dest, what, where, fstype);
@@ -249,17 +248,15 @@ static int add_mount(
return -errno;
}
- if (!noauto) {
- if (post) {
- lnk = strjoin(arg_dest, "/", post, nofail || automount ? ".wants/" : ".requires/", name, NULL);
- if (!lnk)
- return log_oom();
-
- mkdir_parents_label(lnk, 0755);
- if (symlink(unit, lnk) < 0) {
- log_error("Failed to create symlink %s: %m", lnk);
- return -errno;
- }
+ if (!noauto && post) {
+ lnk = strjoin(arg_dest, "/", post, nofail || automount ? ".wants/" : ".requires/", name, NULL);
+ if (!lnk)
+ return log_oom();
+
+ mkdir_parents_label(lnk, 0755);
+ if (symlink(unit, lnk) < 0) {
+ log_error("Failed to create symlink %s: %m", lnk);
+ return -errno;
}
}
@@ -395,7 +392,6 @@ static int parse_fstab(bool initrd) {
static int add_root_mount(void) {
_cleanup_free_ char *o = NULL, *what = NULL;
- bool noauto, nofail;
if (isempty(arg_root_what)) {
log_debug("Could not find a root= entry on the kernel commandline.");
@@ -421,16 +417,14 @@ static int add_root_mount(void) {
if (!o)
return log_oom();
- noauto = mount_test_option(arg_root_options, "noauto");
- nofail = mount_test_option(arg_root_options, "nofail");
-
log_debug("Found entry what=%s where=/sysroot type=%s", what, strna(arg_root_fstype));
return add_mount(what,
"/sysroot",
arg_root_fstype,
o,
1,
- noauto, nofail,
+ false,
+ false,
false,
SPECIAL_INITRD_ROOT_FS_TARGET,
"/proc/cmdline");