commit | a3886c11ee55aa4cb683cbb34d9bf33e4de6fc63 | [log] [tgz] |
---|---|---|
author | Peter Collingbourne <peter@pcc.me.uk> | Tue Sep 05 19:51:38 2017 +0000 |
committer | Peter Collingbourne <peter@pcc.me.uk> | Tue Sep 05 19:51:38 2017 +0000 |
tree | 33d94efa7fab41efb583fd1e1d2eab230b173183 | |
parent | 8c5b337a87c209b26c559510827172073bf4bb8a [diff] |
LTO: Try to open cache files before renaming them. 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 using the sys::fs::rename function. [1] https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.memory%2FLinux_CFI%2F1610%2F%2B%2Frecipes%2Fsteps%2Fcompile%2F0%2Fstdout Differential Revision: https://reviews.llvm.org/D37410 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312567 91177308-0d34-0410-b5e6-96231b3b80d8