[all-commits] [llvm/llvm-project] ed552f: [scudo] Disable OddEvenTags by default.

Evgenii Stepanov via All-commits all-commits at lists.llvm.org
Thu Jun 15 16:37:23 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ed552f2151ac33b8ad6eedd6fda3545ce2220e8d
      https://github.com/llvm/llvm-project/commit/ed552f2151ac33b8ad6eedd6fda3545ce2220e8d
  Author: Evgenii Stepanov <eugenis at google.com>
  Date:   2023-06-15 (Thu, 15 Jun 2023)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp

  Log Message:
  -----------
  [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




More information about the All-commits mailing list