Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[tsan] Increase size of shadow mappings for C/C++ on linux/x86_64 (#7…
…0517) The current TSan mappings for C/C++ on linux/x86_64 have 0.5TB for low app mem, 1.5TB (1.17TB usable) for mid app mem and 1.5TB for high app mem. This can get a bit cramped if the apps are huge, and/or (in the case of mid/high app mem) with significant ASLR entropy (default ASLR setting of 28-bits = 1TB). This patch increases the mapping sizes to 2TB, 5TB, and 6TB for the low, mid and high app regions respectively. This is compatible with up to 30-bits of ASLR entropy. It is difficult to make the mappings any larger, given the 44-bit pointer compression. It also moves the heap region to avoid HeapEnd() overlapping with the newly enlarged high app region. For convenience, we now use kShadowAdd instead of kShadowXor for this set of mappings. This should be roughly equivalent in runtime performance.
- Loading branch information