[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190730014924.2193-5-deepa.kernel@gmail.com>
Date: Mon, 29 Jul 2019 18:49:08 -0700
From: Deepa Dinamani <deepa.kernel@...il.com>
To: viro@...iv.linux.org.uk, linux-kernel@...r.kernel.org
Cc: linux-fsdevel@...r.kernel.org, arnd@...db.de,
y2038@...ts.linaro.org
Subject: [PATCH 04/20] mount: Add mount warning for impending timestamp expiry
The warning reuses the uptime max of 30 years used by the
setitimeofday().
Note that the warning is only added for new filesystem mounts
through the mount syscall. Automounts do not have the same warning.
Signed-off-by: Deepa Dinamani <deepa.kernel@...il.com>
---
fs/namespace.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/fs/namespace.c b/fs/namespace.c
index b26778bdc236..5314fac8035e 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -2739,6 +2739,17 @@ static int do_new_mount_fc(struct fs_context *fc, struct path *mountpoint,
error = do_add_mount(real_mount(mnt), mountpoint, mnt_flags);
if (error < 0)
mntput(mnt);
+
+ if (!error && sb->s_time_max &&
+ (ktime_get_real_seconds() + TIME_UPTIME_SEC_MAX > sb->s_time_max)) {
+ char *buf = (char *)__get_free_page(GFP_KERNEL);
+ char *mntpath = buf ? d_path(mountpoint, buf, PAGE_SIZE) : ERR_PTR(-ENOMEM);
+
+ pr_warn("Mounted %s file system at %s supports timestamps until 0x%llx\n",
+ fc->fs_type->name, mntpath, (unsigned long long)sb->s_time_max);
+ free_page((unsigned long)buf);
+ }
+
return error;
}
--
2.17.1
Powered by blists - more mailing lists