Makefile / racy-git.txt: clarify USE_NSEC prerequisites

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Karsten Blees 2015-07-01 21:10:52 +02:00 коммит произвёл Junio C Hamano
Родитель a5fe66802f
Коммит b1ffafa978
2 изменённых файлов: 11 добавлений и 6 удалений

Просмотреть файл

@ -41,13 +41,17 @@ With a `USE_STDEV` compile-time option, `st_dev` is also
compared, but this is not enabled by default because this member compared, but this is not enabled by default because this member
is not stable on network filesystems. With `USE_NSEC` is not stable on network filesystems. With `USE_NSEC`
compile-time option, `st_mtim.tv_nsec` and `st_ctim.tv_nsec` compile-time option, `st_mtim.tv_nsec` and `st_ctim.tv_nsec`
members are also compared, but this is not enabled by default members are also compared. On Linux, this is not enabled by default
because in-core timestamps can have finer granularity than because in-core timestamps can have finer granularity than
on-disk timestamps, resulting in meaningless changes when an on-disk timestamps, resulting in meaningless changes when an
inode is evicted from the inode cache. See commit 8ce13b0 inode is evicted from the inode cache. See commit 8ce13b0
of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git
([PATCH] Sync in core time granularity with filesystems, ([PATCH] Sync in core time granularity with filesystems,
2005-01-04). 2005-01-04). This patch is included in kernel 2.6.11 and newer, but
only fixes the issue for file systems with exactly 1 ns or 1 s
resolution. Other file systems are still broken in current Linux
kernels (e.g. CEPH, CIFS, NTFS, UDF), see
https://lkml.org/lkml/2015/6/9/714
Racy Git Racy Git
-------- --------

Просмотреть файл

@ -217,10 +217,11 @@ all::
# as the compiler can crash (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49299) # as the compiler can crash (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49299)
# #
# Define USE_NSEC below if you want git to care about sub-second file mtimes # Define USE_NSEC below if you want git to care about sub-second file mtimes
# and ctimes. Note that you need recent glibc (at least 2.2.4) for this, and # and ctimes. Note that you need recent glibc (at least 2.2.4) for this. On
# it will BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely # Linux, kernel 2.6.11 or newer is required for reliable sub-second file times
# randomly break unless your underlying filesystem supports those sub-second # on file systems with exactly 1 ns or 1 s resolution. If you intend to use Git
# times (my ext3 doesn't). # on other file systems (e.g. CEPH, CIFS, NTFS, UDF), don't enable USE_NSEC. See
# Documentation/technical/racy-git.txt for details.
# #
# Define USE_ST_TIMESPEC if your "struct stat" uses "st_ctimespec" instead of # Define USE_ST_TIMESPEC if your "struct stat" uses "st_ctimespec" instead of
# "st_ctim" # "st_ctim"