[PATCH] D37410: LTO: Try to open cache files before renaming them.
Peter Collingbourne via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 1 17:56:24 PDT 2017
pcc created this revision.
Herald added subscribers: hiraditya, inglorion, emaste.
It appears that a potential race between the cache client and the cache
pruner that I thought was unlikely actually happened in practice [1].
Try to avoid the race condition by opening the temporary file before
renaming it. Do this only on non-Windows platforms because we cannot
rename open files on Windows.
[1] https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.memory%2FLinux_CFI%2F1610%2F%2B%2Frecipes%2Fsteps%2Fcompile%2F0%2Fstdout
https://reviews.llvm.org/D37410
Files:
lld/ELF/LTO.cpp
llvm/include/llvm/LTO/Caching.h
llvm/lib/LTO/Caching.cpp
llvm/tools/gold/gold-plugin.cpp
llvm/tools/llvm-lto2/llvm-lto2.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37410.113632.patch
Type: text/x-patch
Size: 5061 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170902/bec18acd/attachment.bin>
More information about the llvm-commits
mailing list