[all-commits] [llvm/llvm-project] dad86f: [ORC] MapperJITLinkMemoryManager should deinitiali...

Lang Hames via All-commits all-commits at lists.llvm.org
Sun Mar 30 20:09:09 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dad86f5931453ff3d14ba5adb93855ee780298b2
      https://github.com/llvm/llvm-project/commit/dad86f5931453ff3d14ba5adb93855ee780298b2
  Author: Lang Hames <lhames at apple.com>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/MapperJITLinkMemoryManager.cpp

  Log Message:
  -----------
  [ORC] MapperJITLinkMemoryManager should deinitialize on abandon, not deallocate.

The JITLinkMemoryManager::InFlightAlloc::abandon method should only abandon
memory for the current allocation, not any other allocations. In
MapperJITLinkMemoryManager this corresponds to the deinitialize operation, not
the deallocate operation (which releases whole slabs of memory that may be
shared by many allocations).

No testcase: This was spotted by inspection. The failing program was linking
concurrently when one linker instance raised an error. Through the call to
abandon an entire underlying slab was deallocated, resulting in segfaults in
other concurrent links that were sharing that slab.



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