[all-commits] [llvm/llvm-project] 54ddd0: [scudo] Update header without read-modify-write op...
ChiaHungDuan via All-commits
all-commits at lists.llvm.org
Thu Sep 28 13:05:48 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 54ddd0762bd0dac31c9e2732bf807cea1785f091
https://github.com/llvm/llvm-project/commit/54ddd0762bd0dac31c9e2732bf807cea1785f091
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
Log Message:
-----------
[scudo] Update header without read-modify-write operation (#66955)
We used to update the deallocated block with
atomic_compare_exchange_strong to ensure the concurrent double-free will
be detected. However, this operation incurs huge performance overhead
which takes over 50% execution time in deallocate(). Given that we
already have the checksum to guard the most double-free cases and other
block verifications in the primary allocator, use atomic-store instead.
More information about the All-commits
mailing list