LLD WASM linker has a deadlock race condition bug

Greetings,

I would like to bring attention to this bug report:
https://bugs.llvm.org/show_bug.cgi?id=41508

WebAssembly is getting quite some attention in the 8.0.0 release cycle
of LLVM thanks to the target being promoted to non-experimental.
Consequently the WASM linker code in LLD is getting some more broad testing.

In the Zig frontend I've added --no-threads for now, to work around the bug.

Please let me know if there is more information I can provide to help
diagnose and fix this bug in LLD. The repro case I uploaded in the issue
tracker triggers the deadlock about 1 in 6 times for me.

Regards,
Andrew

Hi Andrew,

I replied to you on the bug report thread. A suspicious thing I found in lld/wasm is that it calls parallelForEach from a callback function of parallelForEach, although that function is not reentrant.