Message ID | 20190429185610.14475-1-dannym@scratchpost.org |
---|---|
State | Accepted |
Headers | show |
Series | [bug#35494] file-systems: Support the 'rel-atime' flag. | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | success | Successfully applied |
Danny, Danny Milosavljevic wrote: > * guix/build/syscalls.scm (MS_RELATIME): New variable. > * gnu/build/file-systems.scm (mount-flags->bit-mask): Support > it. > * doc/guix.texi (File Systems): Document it. > --- > doc/guix.texi | 9 ++++++--- > gnu/build/file-systems.scm | 2 ++ > guix/build/syscalls.scm | 2 ++ > 3 files changed, 10 insertions(+), 3 deletions(-) > > diff --git a/doc/guix.texi b/doc/guix.texi > index fcee57d9cd..20c9b570c9 100644 > --- a/doc/guix.texi > +++ b/doc/guix.texi > @@ -10756,9 +10756,12 @@ corresponding device mapping > established. > This is a list of symbols denoting mount flags. Recognized > flags > include @code{read-only}, @code{bind-mount}, @code{no-dev} > (disallow > access to special files), @code{no-suid} (ignore setuid and > setgid > -bits), @code{no-atime} (do not update file access times), and > @code{no-exec} > -(disallow program execution). @xref{Mount-Unmount-Remount,,, > libc, The GNU C > -Library Reference Manual}, for more information on these flags. > +bits), @code{no-atime} (do not update file access times), > +@code{rel-atime} (update file access time minimally), and ^^^^^^^^^ That's a great way to explain it in 5 words, but note that there's also ‘lazytime’ which does the same thing, only slightly less so :-) (How about adding that, too?) MHO: since we're adding a hyphen and not blindly following upstream already, I think the symbol itself should be ‘relative-atime’. Abbrevs r meh. Kind regards, T G-R
diff --git a/doc/guix.texi b/doc/guix.texi index fcee57d9cd..20c9b570c9 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10756,9 +10756,12 @@ corresponding device mapping established. This is a list of symbols denoting mount flags. Recognized flags include @code{read-only}, @code{bind-mount}, @code{no-dev} (disallow access to special files), @code{no-suid} (ignore setuid and setgid -bits), @code{no-atime} (do not update file access times), and @code{no-exec} -(disallow program execution). @xref{Mount-Unmount-Remount,,, libc, The GNU C -Library Reference Manual}, for more information on these flags. +bits), @code{no-atime} (do not update file access times), +@code{rel-atime} (update file access time minimally), and +@code{no-exec} (disallow program execution). + +@xref{Mount-Unmount-Remount,,, libc, The GNU C Library Reference Manual}, +for more information on these flags. @item @code{options} (default: @code{#f}) This is either @code{#f}, or a string denoting mount options passed to the diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 8bb10d574d..06fdf0ccd8 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -577,6 +577,8 @@ corresponds to the symbols listed in FLAGS." (logior MS_NOEXEC (loop rest))) (('no-atime rest ...) (logior MS_NOATIME (loop rest))) + (('rel-atime rest ...) + (logior MS_RELATIME (loop rest))) (() 0)))) diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index 3316dc8dc5..5039003bcb 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.scm @@ -40,6 +40,7 @@ MS_NOEXEC MS_REMOUNT MS_NOATIME + MS_RELATIME MS_BIND MS_MOVE MS_STRICTATIME @@ -455,6 +456,7 @@ the returned procedure is called." (define MS_NOATIME 1024) (define MS_BIND 4096) (define MS_MOVE 8192) +(define MS_RELATIME 2097152) (define MS_STRICTATIME 16777216) (define MNT_FORCE 1)