[all-commits] [llvm/llvm-project] 21d500: scudo: Add support for diagnosing memory errors wh...

pcc via All-commits all-commits at lists.llvm.org
Fri Apr 17 17:26:49 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 21d50019ca83765a655b3d67331dfb83cf3d260d
      https://github.com/llvm/llvm-project/commit/21d50019ca83765a655b3d67331dfb83cf3d260d
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2020-04-17 (Fri, 17 Apr 2020)

  Changed paths:
    M compiler-rt/lib/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/common.h
    M compiler-rt/lib/scudo/standalone/fuchsia.cpp
    A compiler-rt/lib/scudo/standalone/fuzz/CMakeLists.txt
    A compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/linux.cpp
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    A compiler-rt/lib/scudo/standalone/stack_depot.h
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp

  Log Message:
  -----------
  scudo: Add support for diagnosing memory errors when memory tagging is enabled.

Introduce a function __scudo_get_error_info() that may be called to interpret
a crash resulting from a memory error, potentially in another process,
given information extracted from the crashing process. The crash may be
interpreted as a use-after-free, buffer overflow or buffer underflow.

Also introduce a feature to optionally record a stack trace for each
allocation and deallocation. If this feature is enabled, a stack trace for
the allocation and (if applicable) the deallocation will also be available
via __scudo_get_error_info().

Differential Revision: https://reviews.llvm.org/D77283




More information about the All-commits mailing list