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 /contrib/hooks | |
parent | Git 1.9.0 (diff) | |
download | tgif-39539495acb24abfb4dee551e3e9f2e696be7abf.tar.xz |
index-pack: work around thread-unsafe pread()
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 'contrib/hooks')
0 files changed, 0 insertions, 0 deletions