RFR(S) 8209950: SIGBUS in CodeHeapState::print_names()

Tobias Hartmann tobias.hartmann at oracle.com
Tue Aug 28 07:58:41 UTC 2018


Hi Lutz,

On 28.08.2018 09:45, Schmidt, Lutz wrote:
> In sharedRuntime.cpp, method->signature is used in line
>    2142:  ArgumentCount args(method->signature());
> The ArgumentCount CTOR isn't ready to handle NULL pointers. I hit this issue while testing for JDK-8207343, after first applying the so far sufficient fix for JDK-8209588.

Sorry, I was actually referring to the change in codeHeapState.cpp (not sharedRuntime.cpp). I was
wondering why you added a os::is_readable_pointer() check for method->signature() but not for
method->name().

> In codeHeapState.cpp, method->name() is not checked in the "big if statement", but a few lines further down (@ line 2198). Why? I did not want to skip the output, just because the name is unavailable. Plus, method->name() is only called if the method is active ("inuse" or "notused"), making it very unlikely for it'S name to be NULL. 

Yes but method->name() is only checked for NULL and not for os::is_readable_pointer(), right? Is
that because the pointer must be valid for the inuse/notused cases?

Thanks,
Tobias


More information about the hotspot-compiler-dev mailing list