From: Yu Watanabe Date: Tue, 26 Jul 2022 14:23:01 +0000 (+0900) Subject: core/mount: downgrade log level about several mkdir failures X-Git-Tag: v252-rc1~571^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=574febda6b0e00aae164b18b70aa80744d950500;p=thirdparty%2Fsystemd.git core/mount: downgrade log level about several mkdir failures --- diff --git a/src/core/mount.c b/src/core/mount.c index 015a77221af..d22e7dec593 100644 --- a/src/core/mount.c +++ b/src/core/mount.c @@ -1053,9 +1053,13 @@ static void mount_enter_mounting(Mount *m) { if (p && mount_is_bind(p)) { r = mkdir_p_label(p->what, m->directory_mode); /* mkdir_p_label() can return -EEXIST if the target path exists and is not a directory - which is - * totally OK, in case the user wants us to overmount a non-directory inode. */ + * totally OK, in case the user wants us to overmount a non-directory inode. Also -EROFS can be + * returned on read-only filesystem. Moreover, -EACCES (and also maybe -EPERM?) may be returned + * when the path is on NFS. See issue #24120. All such errors will be logged in the debug level. */ if (r < 0 && r != -EEXIST) - log_unit_error_errno(UNIT(m), r, "Failed to make bind mount source '%s': %m", p->what); + log_unit_full_errno(UNIT(m), + (r == -EROFS || ERRNO_IS_PRIVILEGE(r)) ? LOG_DEBUG : LOG_WARNING, + r, "Failed to make bind mount source '%s', ignoring: %m", p->what); } if (p) {