Revert "[asan] Enable detect_stack_use_after_return=1 by default"

Temporarily revert the option to fix
https://bugs.chromium.org/p/chromium/issues/detail?id=1319387

This reverts option default and documentation of the commit. Test
changes are not being reverted as they are improvement and break
reliance on option defaults.

Additional memory usage is a problem on mobile devices with low memory.
Even heavy thread desktop programs may need some FakeStack tunning.

This reverts commit 4b4437c084.
This commit is contained in:
Vitaly Buka 2022-04-27 00:20:11 -07:00
parent c103f5e9da
commit c1e94591bc
3 changed files with 3 additions and 5 deletions

View File

@ -15,7 +15,7 @@ following types of bugs:
* Out-of-bounds accesses to heap, stack and globals
* Use-after-free
* Use-after-return (clang flag ``-fsanitize-address-use-after-return=(never|runtime|always)`` default: ``runtime``)
* Disable ``runtime`` with: ``ASAN_OPTIONS=detect_stack_use_after_return=0``
* Enable ``runtime`` with: ``ASAN_OPTIONS=detect_stack_use_after_return=1``
* Use-after-scope (clang flag ``-fsanitize-address-use-after-scope``)
* Double-free, invalid free
* Memory leaks (experimental)

View File

@ -178,9 +178,7 @@ Non-comprehensive list of changes in this release
- Improve the dump format, dump both bitwidth(if its a bitfield) and field value.
- Remove anonymous tag locations.
- Beautify dump format, add indent for nested struct and struct members.
- Previously disabled sanitizer options now enabled by default:
- ASAN_OPTIONS=detect_stack_use_after_return=1 (except Windows).
- MSAN_OPTIONS=poison_in_dtor=1.
- Enable MSAN_OPTIONS=poison_in_dtor=1 by default.
New Compiler Flags
------------------

View File

@ -49,7 +49,7 @@ ASAN_FLAG(
"to find more errors.")
ASAN_FLAG(bool, replace_intrin, true,
"If set, uses custom wrappers for memset/memcpy/memmove intrinsics.")
ASAN_FLAG(bool, detect_stack_use_after_return, !SANITIZER_WINDOWS,
ASAN_FLAG(bool, detect_stack_use_after_return, false,
"Enables stack-use-after-return checking at run-time.")
ASAN_FLAG(int, min_uar_stack_size_log, 16, // We can't do smaller anyway.
"Minimum fake stack size log.")