diff options
author | Lang Hames <lhames@gmail.com> | 2024-08-09 16:51:42 +1000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2024-08-09 17:27:15 +1000 |
commit | a9e75b1d4d18d09a63f120df4781013c1866b4ff (patch) | |
tree | 19da22c7f8829097ab1f1b3bd8204109fd19c6b7 /llvm/utils/UpdateTestChecks/asm.py | |
parent | a50b9633357007ff886f3fd228ca4b8a9b9b9852 (diff) | |
download | llvm-a9e75b1d4d18d09a63f120df4781013c1866b4ff.zip llvm-a9e75b1d4d18d09a63f120df4781013c1866b4ff.tar.gz llvm-a9e75b1d4d18d09a63f120df4781013c1866b4ff.tar.bz2 |
[ORC][MachO] Fix race condition during MachOPlatform bootstrap.
In 93509b4462a74 MachOPlatform was updated to store object symbols in a shared
vector during bootstrap (this table is later attached to the
bootstrap-completion graph once the ORC runtime's symbol table registration
code is ready). The shared vector was not guarded with a mutex, so use of a
concurrent dispatcher could lead to races during bootstrap. This commit fixes
the issue by guarding access to the table with the BootstrapInfo mutex.
No testcase since this only manifests rarely when both a concurrent dispatcher
and the ORC runtime are used. Once we add a concurrent dispatcher option to
llvm-jitlink we may be able to test this with a regression test in the ORC
runtime and TSan enabled.
rdar://133520308
Diffstat (limited to 'llvm/utils/UpdateTestChecks/asm.py')
0 files changed, 0 insertions, 0 deletions