[PATCH] D40568: design document for a hardware-assisted memory safety (HWAMS) tool, similar to AddressSanitizer

Evgenii Stepanov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 29 11:45:02 PST 2017


eugenis added inline comments.


================
Comment at: docs/TaggedAddressSanitizerDesign.rst:22
+*quarantine* to find use-after-free.
+The shadow, the redzones, and the quarantine are the
+major sources of AddressSanitizer's memory overhead.
----------------
kcc wrote:
> davidxl wrote:
> > What is the overhead of redzones compared with shadow memory?
> depends.
> shadow is 1/9 of all memory.
> redzones largely depend on the allocation patterns. 
> If most heap allocations are big, the combined redzones are tiny, and vise versa 
> 
It's worth mentioning that typical ASan memory overhead of 2x to 3x, mainly from redzones and quarantine.

This new tool will have only the shadow, which is a tiny fraction of the original memory footprint, and some overhead from over-aligning everything. The latter is expected to be small, especially if N (see below) is reduced to 16 or even 8, in which case the shadow grows to 1/16th or 1/8th, respectively. In any case, I'd expect less than 25% RAM overhead, hopefully way less.


Repository:
  rC Clang

https://reviews.llvm.org/D40568





More information about the llvm-commits mailing list