diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2014-03-25 20:41:41 +0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-04-16 09:29:41 -0700 |
commit | 39539495acb24abfb4dee551e3e9f2e696be7abf (patch) | |
tree | fbf97b4f412312b0788e290fc4008e616bdc28eb /config.mak.uname | |
parent | 5f95c9f850b19b368c43ae399cc831b17a26a5ac (diff) | |
download | git-39539495acb24abfb4dee551e3e9f2e696be7abf.tar.gz |
index-pack: work around thread-unsafe pread()nd/index-pack-one-fd-per-thread
Multi-threaing of index-pack was disabled with c0f8654
(index-pack: Disable threading on cygwin - 2012-06-26), because
pread() implementations for Cygwin and MSYS were not thread
safe. Recent Cygwin does offer usable pread() and we enabled
multi-threading with 103d530f (Cygwin 1.7 has thread-safe pread,
2013-07-19).
Work around this problem on platforms with a thread-unsafe
pread() emulation by opening one file handle per thread; it
would prevent parallel pread() on different file handles from
stepping on each other.
Also remove NO_THREAD_SAFE_PREAD that was introduced in c0f8654
because it's no longer used anywhere.
This workaround is unconditional, even for platforms with
thread-safe pread() because the overhead is small (a couple file
handles more) and not worth fragmenting the code.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Tested-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'config.mak.uname')
-rw-r--r-- | config.mak.uname | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/config.mak.uname b/config.mak.uname index 7d31fad241..db5c249b4c 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -158,7 +158,6 @@ ifeq ($(uname_O),Cygwin) NO_SYMLINK_HEAD = YesPlease NO_IPV6 = YesPlease OLD_ICONV = UnfortunatelyYes - NO_THREAD_SAFE_PREAD = YesPlease # There are conflicting reports about this. # On some boxes NO_MMAP is needed, and not so elsewhere. # Try commenting this out if you suspect MMAP is more efficient |