On Mon, May 26, 2014 at 4:55 PM, Yury Gribov <[email protected]> wrote:
> Hi all,
>
> Asan shared runtime currently performs a startup sanity check to make sure
> that
> it is able to successfully intercept Glibc symbols.
> This check is aimed at early detection of mistakes when running
> uninstrumented executable linked against instrumented DSO
> (more details in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56393).
> The check is rather crude: unless libasan.so goes first
> in list of loaded DSOs,
> Asan runtime reports an error and terminates the program.
>
> GCC team has recently expressed their concerns
> (in https://gcc.gnu.org/ml/gcc-patches/2014-05/msg01919.html)
> that this behavior prevents some rather standard use-cases
> e.g. when user wants to decorate malloc calls
> with his own code via LD_PRELOAD
> and then continue with Asan's malloc.
>
> Indeed Asan shared runtime only needs to preceed libc, libpthread and other
> libraries that it intercepts
> to achieve correct symbol resolution. Other user libraries may freely
> preceed it.
>
> The easiest solution is probably to hide current warning under verbosity > 0

A check under verbosity > 0 is almost ("but not quite entirely")
useless because verbosity > 0
is not a normal mode of operation. And if we simply hide the current
check under verbosity > 0
it will still be broken in some places.
So, I think we should either fix the check or remove it.


> and remove Die().
>
> Thoughts?
>
> -Y
>
> --
> 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.

Reply via email to