[all-commits] [llvm/llvm-project] 4a04fc: [compiler-rt][asan] Fix for flaky asan check (#88177)

PiJoules via All-commits all-commits at lists.llvm.org
Tue Apr 9 15:39:26 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4a04fca9e2f936264bccba58081893c6703de7ec
      https://github.com/llvm/llvm-project/commit/4a04fca9e2f936264bccba58081893c6703de7ec
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2024-04-09 (Tue, 09 Apr 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_thread.cpp

  Log Message:
  -----------
  [compiler-rt][asan] Fix for flaky asan check (#88177)

This fixes https://github.com/llvm/llvm-project/issues/87324.

We haven't been able to come up with a minimal reproducer but we can
reliabely avoid this failure with the following fix. Prior to the
GetGlobalLowLevelAllocator change, the old LowLevelAllocator aquired a
lock associated with it preventing that specific allocator from being
accessed at the same time by many threads. With the
GetGlobalLowLevelAllocator change, I had accidentally replaced it but
not taken into account the lock, so we can have a data race if the
allocator is used at any point while a thread is being created. The
global allocator can be used for flag parsing or registering asan
globals.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list