From: Michael Kerrisk <hidden> Date: 2015-02-20 08:50:50
Hello Ted,
Based on your commit message 0ae45f63d4e, I I wrote the documentation
below for MS_LAZYTIME, to go into the mount(2) man page. Could you
please check it over and let me know if it's accurate. In particular,
I added pieces marked with "*" below that were not part of the commit
message and I'd like confirmation that they're accurate.
Thanks,
Michael
[[
MS_LAZYTIME (since Linux 3.20)
Only update filetimes (atime, mtime, ctime) on the in-
memory version of the file inode. The on-disk time‐
stamps are updated only when:
(a) the inode needs to be updated for some change unre‐
lated to file timestamps;
(b) the application employs fsync(2), syncfs(2), or
sync(2);
(c) an undeleted inode is evicted from memory; or
* (d) more than 24 hours have passed since the i-node was
* written to disk.
This mount option significantly reduces writes to the
inode table for workloads that perform frequent random
writes to preallocated files.
* As at Linux 3.20, this option is supported only on ext4.
]]
--
Michael Kerrisk Linux man-pages maintainer;
http://www.kernel.org/doc/man-pages/
Author of "The Linux Programming Interface", http://blog.man7.org/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Eric Sandeen <hidden> Date: 2015-02-20 15:49:34
On 2/20/15 2:50 AM, Michael Kerrisk wrote:
Hello Ted,
Based on your commit message 0ae45f63d4e, I I wrote the documentation
below for MS_LAZYTIME, to go into the mount(2) man page. Could you
please check it over and let me know if it's accurate. In particular,
I added pieces marked with "*" below that were not part of the commit
message and I'd like confirmation that they're accurate.
Thanks,
Michael
[[
MS_LAZYTIME (since Linux 3.20)
Only update filetimes (atime, mtime, ctime) on the in-
memory version of the file inode. The on-disk time‐
stamps are updated only when:
"filetimes" and "file inode" seems a bit awkward. How about:
MS_LAZYTIME (since Linux 3.20)
Reduce on-disk updates of inode timestamps (atime, mtime, ctime)
by maintaining these changes only in memory, unless:
(maybe I'm bike-shedding too much, if so, sorry).
(a) the inode needs to be updated for some change unre‐
lated to file timestamps;
(b) the application employs fsync(2), syncfs(2), or
sync(2);
(c) an undeleted inode is evicted from memory; or
* (d) more than 24 hours have passed since the i-node was
* written to disk.
Please don't use "i-node" - simply "inode" is much more common in the manpages
AFAICT.
This mount option significantly reduces writes to the
inode table for workloads that perform frequent random
writes to preallocated files.
This seems like an overly specific description of a single workload out
of many which may benefit, but what do others think? "inode table" is also
fairly extN-specific.
-Eric
* As at Linux 3.20, this option is supported only on ext4.
]]
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Feb 20, 2015 at 09:49:34AM -0600, Eric Sandeen wrote:
quoted
This mount option significantly reduces writes to the
inode table for workloads that perform frequent random
writes to preallocated files.
This seems like an overly specific description of a single workload out
of many which may benefit, but what do others think? "inode table" is also
fairly extN-specific.
How about somethign like "This mount significantly reduces writes
needed to update the inode's timestamps, especially mtime and actime.
Examples of workloads where this could be a large win include frequent
random writes to preallocated files, as well as cases where the
MS_STRICTATIME mount option is enabled."?
(The advantage of MS_STRICTATIME | MS_LAZYTIME is that stat system
calls will return the correctly updated atime, but those atime updates
won't get flushed to disk unless the inode needs to be updated for
file system / data consistency reasons, or when the inode is pushed
out of memory, or when the file system is unmounted.)
- Ted
From: Michael Kerrisk (man-pages) <hidden> Date: 2015-02-21 07:57:05
On 02/20/2015 04:49 PM, Eric Sandeen wrote:
On 2/20/15 2:50 AM, Michael Kerrisk wrote:
quoted
Hello Ted,
Based on your commit message 0ae45f63d4e, I I wrote the documentation
below for MS_LAZYTIME, to go into the mount(2) man page. Could you
please check it over and let me know if it's accurate. In particular,
I added pieces marked with "*" below that were not part of the commit
message and I'd like confirmation that they're accurate.
Thanks,
Michael
[[
MS_LAZYTIME (since Linux 3.20)
Only update filetimes (atime, mtime, ctime) on the in-
memory version of the file inode. The on-disk time‐
stamps are updated only when:
"filetimes" and "file inode" seems a bit awkward. How about:
quoted
MS_LAZYTIME (since Linux 3.20)
Reduce on-disk updates of inode timestamps (atime, mtime, ctime)
by maintaining these changes only in memory, unless:
(maybe I'm bike-shedding too much, if so, sorry).
Nah it''s the good sort of bikeshedding ;-). "filetimes" was a wordo--I
meant "timestamps". I've taken your wording mostly.
quoted
(a) the inode needs to be updated for some change unre‐
lated to file timestamps;
(b) the application employs fsync(2), syncfs(2), or
sync(2);
(c) an undeleted inode is evicted from memory; or
* (d) more than 24 hours have passed since the i-node was
* written to disk.
Please don't use "i-node" - simply "inode" is much more common in the manpages
AFAICT.
Yup, that was a typo. Fixed.
quoted
This mount option significantly reduces writes to the
inode table for workloads that perform frequent random
writes to preallocated files.
This seems like an overly specific description of a single workload out
of many which may benefit, but what do others think?
Fair enough. I reworded that to note it as an example.
"inode table" is also fairly extN-specific.
I'll await further input on that point.
Now we have:
MS_LAZYTIME (since Linux 3.20)
Reduce on-disk updates of inode timestamps (atime,
mtime, ctime) by maintaining these changes only in mem‐
ory. The on-disk timestamps are updated only when:
(a) the inode needs to be updated for some change unre‐
lated to file timestamps;
(b) the application employs fsync(2), syncfs(2), or
sync(2);
(c) an undeleted inode is evicted from memory; or
(d) more than 24 hours have passed since the inode was
written to disk.
This mount option significantly reduces writes to the
inode table for some workloads (e.g., when performing
frequent random writes to preallocated files).
Cheers,
Michael
--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs