Hi, is it still an issue for you? Please provide more info about the failure mode. ASan is supposed to work on the current AOSP master branch with Clang toolchain in the latest NDK, as described in https://code.google.com/p/address-sanitizer/wiki/Android.
This comment looks up-to-date: https://code.google.com/p/address-sanitizer/issues/detail?id=326#c2 > 1. Conflict with libsigchain on Android 5.0, which also intercepts > sigaction; On Android L 5.1, libsigchain.so no LD_PRELOAD > > 2. Missing libcorkscrew.so. We need a different way to unwind from a signal > handler Yes, libcorkscrew.so is gone, but it is no longer needed. > > For this problem, we have porting corkscrew unwind lib for providing related > backtrace API > > 3. many intercept function SIGSEGV, strcmp/memchr etc Please provide logs, error messages, etc. On Mon, Mar 16, 2015 at 2:33 PM, chunhuili chunhuili <[email protected]> wrote: > Address sanitizer on L version, we meet some problem as blow, maybe we miss > some useful information for this feature, could you please show us the > useful user guide for L ASan? > > For 32bit process enable Address sanitizer, Android L 5.0 address sanitizer > can't work, for L 5.1 java process enable ASan can work after disable many > inceptor functions,below is part of com.android.browser maps. > > 00040000-03000000 ---p 00000000 00:00 0 > > 03000000-18000000 rw-p 00000000 00:00 0 > > 18941000-275f0000 rw-s 00000000 00:04 19513 > /dev/ashmem/DiscardableMemoryAshmemAllocator (deleted) > > b6ab6000-b6ae7000 r-xp 00000000 b3:11 1231 > /system/lib/libclang_rt.asan_arm_android.so > > b6ae7000-b6ae8000 r--p 00030000 b3:11 1231 > /system/lib/libclang_rt.asan_arm_android.so > > b6ae8000-b6ae9000 rw-p 00031000 b3:11 1231 > /system/lib/libclang_rt.asan_arm_android.so > > b6f6b000-b6f70000 r-xp 00000000 b3:11 226 > /system/bin/asan/app_process > > b6f70000-b6f71000 r--p 00004000 b3:11 226 > /system/bin/asan/app_process > > b6f71000-b6f72000 rw-p 00005000 b3:11 226 > /system/bin/asan/app_process > > > > Google issue about address sanitizer: > https://code.google.com/p/address-sanitizer/issues/detail?id=326 > > main problem: > > 1. Conflict with libsigchain on Android 5.0, which also intercepts > sigaction; On Android L 5.1, libsigchain.so no LD_PRELOAD > > 2. Missing libcorkscrew.so. We need a different way to unwind from a signal > handler > > For this problem, we have porting corkscrew unwind lib for providing related > backtrace API > > 3. many intercept function SIGSEGV, strcmp/memchr etc > > > > we also find information which show ASan can't work on L version. > > https://code.google.com/p/address-sanitizer/wiki/Android > > NOTE: ASan is broken on Android L. Use a K* build. This will be fixed in one > of the future L updates. > > > > For 64bit process, compiler is GCC 4.9, GCC 4.9 manual show it support > address sanitizer but when set -fsanitize=address, no instrument for > load/store. > > gcc 4.9.2 user guide: -fsanitize=address > > Enable AddressSanitizer, a fast memory error detector. Memory access > instructions will be instrumented to detect out-of-bounds and use-after-free > bugs. See http://code.google.com/p/address-sanitizer/ for more details. The > run-time behavior can be influenced using the ASAN_OPTIONS environment > variable; see https://code.google.com/p/address-sanitizer/wiki/Flags# > Run-time_flags for a list of supported options > > -- > You received this message because you are subscribed to the Google Groups > "address-sanitizer" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "address-sanitizer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
