That's remind me of something, With the solution you offered in your first 
reply:




*>Build both instrumented and >non-instrumented versions of libhwui.so, 
place first in >/system/lib/asan and the second in /system/lib. Add 
>LD_LIBRARY_PATH=/system/lib/*





*>asan to asan_wrapper. This way anything >started with asan_wrapper will 
prefer instrumented versions of >libraries in /system/lib/asan, and zygote 
will use the normal version >in /system/lib.*a little confused ,that when 
we use asan_device_setup script for java apps Asan using, this *LD_LIBRARY_PATH 
*setting will not helpful for the mem cost problem, because we don't use 
asanwapper in this situation.
And Of cource, I've read the asan_device_setup script, we changed the 
app_process to a script and use it to exec the real app_process, I think 
maybe we can add *LD_LIBRARY_PATH *to the app_process script we added, but 
still not helpful at all,all forked process will use instrumented versions 
of libraries in /system/lib/asan, and consume all my memory. Am I right?
In other way said, we must use asanwapper instead of  asan_device_setup 
script for java apps, we must setprop.Right?




在 2014年7月23日星期三UTC+8下午7时23分38秒,Evgeniy Stepanov写道:
>
> Well, setprop approach is deprecated. With the new asan_device_setup 
> script, everything should work automatically, because asan runtime is 
> already loaded into zygote, and only activated when an instrumented 
> application is started. 
>
> Modifying init.rc is really not that hard. There is an idea that I 
> always wanted to implement for ASan applications to re-exec themselves 
> if they are run with asanwrapper (i.e. without ASan runtime library in 
> LD_PRELOAD list). In that case ASan would add itself to LD_PRELOAD and 
> call exec() on itself. It would require changing ASan code. I would 
> not have time for this in the coming months. 
>
>
> On Thu, Jul 17, 2014 at 6:34 PM, ji wang <mason....@gmail.com 
> <javascript:>> wrote: 
> > Hi, Evgeniy 
> > Thanks for your reply. And yes, the OOM issue happed with instrumented 
> > libhwui.so. I understood why this memory consume so huge now. 
> > And with the solution u offred,  not all process using the instrumented 
> > libhwui.so, just the process u want to check using asan, this is useful 
> for 
> > Problem Two, but we still have Problem One:we must preload 
> > libasan_preload.so to the process first, the app process way to achive 
> this 
> > is "setprop wrap.com.android.appname "logwrapper asanwrapper"", the 
> native 
> > procecess way to achive this is modify the init.rc file.  and besides 
> the 
> > property way for app will not work after reboot, must set it again. Not 
> easy 
> > to use. Does we have any solutions for this? Thank u very much. 
> > 
> > 在 2014年7月16日星期三UTC+8下午6时48分41秒,Evgeniy Stepanov写道: 
> >> 
> >> Does this out-of-memory issue happen with instrumented libhwui.so? 
> >> This has an easy explanation. ASan activates all of its 
> >> memory-consuming logic when the first instrumented library is loaded 
> >> into the process. If such library is loaded into zygote pre-fork, all 
> >> java apps are running with ASan enabled, and consume all your memory. 
> >> 
> >> There is something you can try. Build both instrumented and 
> >> non-instrumented versions of libhwui.so, place first in 
> >> /system/lib/asan and the second in /system/lib. Add 
> >> LD_LIBRARY_PATH=/system/lib/asan to asan_wrapper. This way anything 
> >> started with asan_wrapper will prefer instrumented versions of 
> >> libraries in /system/lib/asan, and zygote will use the normal version 
> >> in /system/lib. 
> >> 
> >> 
> >> On Wed, Jul 16, 2014 at 2:00 PM, ji wang <mason....@gmail.com> wrote: 
> >> > Hi, 
> >> > We now want use LLVM Asan to check some android libs like libhwui.so, 
> >> > but 
> >> > found out is not very easy to use. Is there any way to solve this? Or 
> I 
> >> > use 
> >> > it the wrong way? 
> >> > The problem is we must preload libasan_preload.so before those 
> checking 
> >> > lib 
> >> > initlized or used in some processes. For example, when we want check 
> >> > libhwui.so,we must modify init.rc to use asanwrapper to load 
> mediaserver 
> >> > process in order to preload libasan_preload.so , (and the same to 
> >> > app_process,of cource the asan_device_setup.sh already done the 
> >> > app_process 
> >> > part,) otherwise without this step android device will got boot error 
> >> > failure.This will ask us have to know how many processes use this 
> >> > checking 
> >> > lib and what those processes are exactly! wow.. 
> >> > Besides, there is one more problem, when we use LLVM asan, after use 
> >> > asan_device_setup.sh to install asan to our device, we didnot add any 
> >> > libs 
> >> > or binary for check, but still got a huge memory cost after the 
> device 
> >> > bootup, and for 1G ram android devices, we got boot failure, becauce 
> of 
> >> > the 
> >> > LMK kill launcher and some other app process for no memory lost! 
> >> > 
> >> > 
> >> > -- 
> >> > 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 address-saniti...@googlegroups.com. 
> >> > 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 address-saniti...@googlegroups.com <javascript:>. 
> > 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 address-sanitizer+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to