mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-24 18:39:34 +03:00
Make zfs mount according to relatime config in dataset
Also enable lazytime in mount.zfs Signed-off-by: Chunwei Chen <david.chen@osnexus.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #4482
This commit is contained in:
parent
704cd0758a
commit
6760077194
@ -78,7 +78,10 @@ static const option_map_t option_map[] = {
|
||||
{ MNTOPT_RELATIME, MS_RELATIME, ZS_COMMENT },
|
||||
#endif
|
||||
#ifdef MS_STRICTATIME
|
||||
{ MNTOPT_DFRATIME, MS_STRICTATIME, ZS_COMMENT },
|
||||
{ MNTOPT_STRICTATIME, MS_STRICTATIME, ZS_COMMENT },
|
||||
#endif
|
||||
#ifdef MS_LAZYTIME
|
||||
{ MNTOPT_LAZYTIME, MS_LAZYTIME, ZS_COMMENT },
|
||||
#endif
|
||||
{ MNTOPT_CONTEXT, MS_COMMENT, ZS_COMMENT },
|
||||
{ MNTOPT_FSCONTEXT, MS_COMMENT, ZS_COMMENT },
|
||||
|
@ -68,8 +68,9 @@
|
||||
#define MNTOPT_NOFAIL "nofail" /* no failure */
|
||||
#define MNTOPT_RELATIME "relatime" /* allow relative time updates */
|
||||
#define MNTOPT_NORELATIME "norelatime" /* do not allow relative time updates */
|
||||
#define MNTOPT_DFRATIME "strictatime" /* Deferred access time updates */
|
||||
#define MNTOPT_NODFRATIME "nostrictatime" /* No Deferred access time updates */
|
||||
#define MNTOPT_STRICTATIME "strictatime" /* strict access time updates */
|
||||
#define MNTOPT_NOSTRICTATIME "nostrictatime" /* No strict access time updates */
|
||||
#define MNTOPT_LAZYTIME "lazytime" /* Defer access time writing */
|
||||
#define MNTOPT_SETUID "suid" /* Both setuid and devices allowed */
|
||||
#define MNTOPT_NOSETUID "nosuid" /* Neither setuid nor devices allowed */
|
||||
#define MNTOPT_OWNER "owner" /* allow owner mount */
|
||||
|
@ -365,6 +365,14 @@ zfs_add_options(zfs_handle_t *zhp, char *options, int len)
|
||||
|
||||
error = zfs_add_option(zhp, options, len,
|
||||
ZFS_PROP_ATIME, MNTOPT_ATIME, MNTOPT_NOATIME);
|
||||
/*
|
||||
* don't add relatime/strictatime when atime=off, otherwise strictatime
|
||||
* will force atime=on
|
||||
*/
|
||||
if (strstr(options, MNTOPT_NOATIME) == NULL) {
|
||||
error = zfs_add_option(zhp, options, len,
|
||||
ZFS_PROP_RELATIME, MNTOPT_RELATIME, MNTOPT_STRICTATIME);
|
||||
}
|
||||
error = error ? error : zfs_add_option(zhp, options, len,
|
||||
ZFS_PROP_DEVICES, MNTOPT_DEVICES, MNTOPT_NODEVICES);
|
||||
error = error ? error : zfs_add_option(zhp, options, len,
|
||||
|
Loading…
Reference in New Issue
Block a user