[PATCH] D20745: [esan] Add handling of large stack size rlimits

Derek Bruening via llvm-commits llvm-commits at lists.llvm.org
Fri May 27 12:36:57 PDT 2016


bruening created this revision.
bruening added a reviewer: eugenis.
bruening added subscribers: llvm-commits, aizatsky, kcc, zhaoqin, vitalybuka.
Herald added a subscriber: kubabrecka.

Adds detection of large stack size rlimits (over 1 TB or unlimited), which
results in an mmap location that our shadow mapping does not support.  We
re-exec the application in this situation.  Adds a test of this behavior.

Adds general detection of mmap regions outside of our app regions.  In the
future we want to try to adaptively handle these but for now we abort.

Moves the existing Linux-specific mmap code into a platform-specific file
where the new rlimit code lives.

http://reviews.llvm.org/D20745

Files:
  lib/esan/CMakeLists.txt
  lib/esan/esan.cpp
  lib/esan/esan.h
  lib/esan/esan_interceptors.cpp
  lib/esan/esan_linux.cpp
  lib/esan/esan_shadow.h
  lib/sanitizer_common/sanitizer_common.h
  lib/sanitizer_common/sanitizer_posix_libcdep.cc
  test/esan/TestCases/large-stack-linux.c
  test/esan/TestCases/mmap-shadow-conflict.c
  test/esan/TestCases/verbose-simple.c
  test/esan/TestCases/workingset-memset.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20745.58825.patch
Type: text/x-patch
Size: 13654 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160527/7a1dd91a/attachment.bin>


More information about the llvm-commits mailing list