[scudo] Disable OddEvenTags by default.
authorEvgenii Stepanov <eugenis@google.com>
Wed, 14 Jun 2023 23:58:20 +0000 (16:58 -0700)
committerEvgenii Stepanov <eugenis@google.com>
Thu, 15 Jun 2023 23:36:27 +0000 (16:36 -0700)
commited552f2151ac33b8ad6eedd6fda3545ce2220e8d
tree560c0d1ae082436ba832a04fcba2d45ee3849abc
parent17623e96b5b84c0868fe6b4a1456e3d7da275c95
[scudo] Disable OddEvenTags by default.

Scudo has zero-tagged headers between any two allocation that will catch
a linear buffer overflow of up to 16 bytes. OddEvenTags extends this
guarantee to one chunk of the given SizeClass at the cost of the reduced
entropy for all heap tags (i.e. lower chance to catch use-after-free and
large overflows).

Given that the first 16 bytes are already deterministic, I feel this is
a bad tradeoff.

Differential Revision: https://reviews.llvm.org/D152984
compiler-rt/lib/scudo/standalone/combined.h
compiler-rt/lib/scudo/standalone/tests/combined_test.cpp