summaryrefslogtreecommitdiff
path: root/src/fstab-generator/fstab-generator.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-01-05 12:35:08 +0100
committerLennart Poettering <lennart@poettering.net>2015-01-05 12:35:08 +0100
commit00b4ffdecbb39d849af65c0ab741be482325a4a9 (patch)
tree1fa1237f52b4eaed1e784ba8e7d8bbe2857cf636 /src/fstab-generator/fstab-generator.c
parent6b3fd9a14d378a35d95ec4be65065708d092bee2 (diff)
fstab-generator: use more appropriate checks for swap and device availability
We always should use the same checks when deciding whether swap support and mounting of devices is supported. Hence, let's make fstab-generator's logic more similar to the usual logic we follow: a) Look for /proc/swaps and no container support before activating swaps. b) Look for /sys being writable befire supporting device mounts.
Diffstat (limited to 'src/fstab-generator/fstab-generator.c')
-rw-r--r--src/fstab-generator/fstab-generator.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c
index 1f34594928..496657bdc1 100644
--- a/src/fstab-generator/fstab-generator.c
+++ b/src/fstab-generator/fstab-generator.c
@@ -87,6 +87,11 @@ static int add_swap(
assert(what);
assert(me);
+ if (access("/proc/swaps", F_OK) < 0) {
+ log_info("Swap not supported, ignoring fstab swap entry for %s.", what);
+ return 0;
+ }
+
if (detect_container(NULL) > 0) {
log_info("Running in a container, ignoring fstab swap entry for %s.", what);
return 0;
@@ -355,7 +360,7 @@ static int parse_fstab(bool initrd) {
if (!what)
return log_oom();
- if (detect_container(NULL) > 0 && is_device_path(what)) {
+ if (is_device_path(what) && path_is_read_only_fs("sys") > 0) {
log_info("Running in a container, ignoring fstab device entry for %s.", what);
continue;
}