diff options
author | Ludovic Courtès <ludo@gnu.org> | 2022-10-20 21:16:49 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2022-10-20 23:07:37 +0200 |
commit | 6352e3a17b5978cf9af9e1668816d8f47ec85208 (patch) | |
tree | 967e5859cc2c71607ef53ee6fc582cd7169ddb9a | |
parent | 4056cd9480416f38e06f98fdf5acea7c82a4c886 (diff) |
syscalls: Define 'MS_NODIRATIME' and recognize "nodiratime".
Fixes <https://issues.guix.gnu.org/58663>.
This is a followup to b665dd4a9902b5722b9e06fd89c203e2221b19e0 and
dcb640f02b1f9590c3bd4301a22bf31bd60c56d4, allowing "nodiratime" to be
preserved for bind mounts.
* guix/build/syscalls.scm (MS_NODIRATIME): New variable.
(option-string->mount-flags): Recognize it.
(statfs-flags->mount-flags): Likewise.
-rw-r--r-- | guix/build/syscalls.scm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index 7842b0a9fc..61926beb80 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.scm @@ -46,6 +46,7 @@ MS_NOEXEC MS_REMOUNT MS_NOATIME + MS_NODIRATIME MS_STRICTATIME MS_RELATIME MS_BIND @@ -537,6 +538,7 @@ the last argument of `mknod'." (define MS_NOEXEC 8) (define MS_REMOUNT 32) (define MS_NOATIME 1024) +(define MS_NODIRATIME 2048) (define MS_BIND 4096) (define MS_MOVE 8192) (define MS_SHARED 1048576) @@ -640,7 +642,8 @@ the remaining unprocessed options." ("nodev" => MS_NODEV) ("noexec" => MS_NOEXEC) ("relatime" => MS_RELATIME) - ("noatime" => MS_NOATIME))))))) + ("noatime" => MS_NOATIME) + ("nodiratime" => MS_NODIRATIME))))))) (define (mount-flags mount) "Return the mount flags of MOUNT, a <mount> record, as an inclusive or of @@ -873,7 +876,7 @@ fdatasync(2) on the underlying file descriptor." (ST_NODEV => MS_NODEV) (ST_NOEXEC => MS_NOEXEC) (ST_NOATIME => MS_NOATIME) - (ST_NODIRATIME => 0) ;FIXME + (ST_NODIRATIME => MS_NODIRATIME) (ST_RELATIME => MS_RELATIME)))) (define-c-struct %statfs ;<bits/statfs.h> |