diff options
author | Dmitry Vyukov <dvyukov@google.com> | 2021-06-19 12:49:37 +0200 |
---|---|---|
committer | Dmitry Vyukov <dvyukov@google.com> | 2021-06-24 09:47:44 +0200 |
commit | 1db68fcd8e76dc6437f028c8ace408aa7d04e647 (patch) | |
tree | dff561e32b6a89dcfd9467146e6f3f1a51747cc3 /llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | |
parent | 35e1dbd18920a0f1863cd06651d217693a94ad60 (diff) | |
download | llvm-1db68fcd8e76dc6437f028c8ace408aa7d04e647.zip llvm-1db68fcd8e76dc6437f028c8ace408aa7d04e647.tar.gz llvm-1db68fcd8e76dc6437f028c8ace408aa7d04e647.tar.bz2 |
tsan: fix mmap atomicity
Mmap interceptor is not atomic in the sense that it
exposes unmapped shadow for a brief period of time.
This breaks programs that mmap over another mmap
and access the region concurrently.
Don't unmap shadow in the mmap interceptor to fix this.
Just mapping new shadow on top should be enough to zero it.
Reviewed By: vitalybuka
Differential Revision: https://reviews.llvm.org/D104593
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp')
0 files changed, 0 insertions, 0 deletions