This looks good, but given that hprof is going away [1] I’m not sure it’s worth 
the time to fix it. Anyway, I’m ok with the fix.

Thanks,
/Staffan

[1] https://bugs.openjdk.java.net/browse/JDK-8046661 
<https://bugs.openjdk.java.net/browse/JDK-8046661>


> On 16 maj 2015, at 01:12, Jeremy Manson <jeremyman...@google.com> wrote:
> 
> Looking for a sponsor...
> 
> The issue:  hprof finds its location by looking for the first library 
> containing an Agent_OnLoad symbol. This may not be libhprof.so. There is 
> workaround logic for this on Solaris, but not on other platforms.
> 
> Note the comment in src/jdk.hprof.agent/unix/native/libhprof/hprof_md.c:296:
> 
>  /* Just using &Agent_OnLoad will get the first external symbol with
>   * this name in the first .so, which may not be libhprof.so.
>   * On Solaris we can actually ask for the address of our Agent_OnLoad.
>   */
>   addr = dlsym(RTLD_SELF, "Agent_OnLoad");
>   /* Just in case the above didn't work (missing linker patch?). */
>   if ( addr == NULL ) {
>     addr = (void*)&Agent_OnLoad;
>   }
> 
> Instead of looking for Agent_OnLoad as a symbol, I suggest we just look for 
> the symbol of the current method.  
> 
> Patch:
> http://cr.openjdk.java.net/~jmanson/8080538/webrev.00/ 
> <http://cr.openjdk.java.net/~jmanson/8080538/webrev.00/>
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8080538 
> <https://bugs.openjdk.java.net/browse/JDK-8080538>
> 
> Jeremy

Reply via email to