summaryrefslogtreecommitdiff
path: root/src/core/mount.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/mount.c')
-rw-r--r--src/core/mount.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/src/core/mount.c b/src/core/mount.c
index 8b787f66b0..b571db946d 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -814,19 +814,26 @@ fail:
}
void warn_if_dir_nonempty(const char *unit, const char* where) {
+ int r;
+
assert(unit);
assert(where);
- if (dir_is_empty(where) > 0)
+ r = dir_is_empty(where);
+ if (r > 0)
return;
-
- log_struct_unit(LOG_NOTICE,
- unit,
- "MESSAGE=%s: Directory %s to mount over is not empty, mounting anyway.",
- unit, where,
- "WHERE=%s", where,
- MESSAGE_ID(SD_MESSAGE_OVERMOUNTING),
- NULL);
+ else if (r == 0)
+ log_struct_unit(LOG_NOTICE,
+ unit,
+ "MESSAGE=%s: Directory %s to mount over is not empty, mounting anyway.",
+ unit, where,
+ "WHERE=%s", where,
+ MESSAGE_ID(SD_MESSAGE_OVERMOUNTING),
+ NULL);
+ else
+ log_warning_unit(unit,
+ "MESSAGE=Failed to check directory %s: %s",
+ where, strerror(-r));
}
static int fail_if_symlink(const char *unit, const char* where) {