RFR: 8029630: Print thread id hex representation in error messages.

David Holmes david.holmes at oracle.com
Tue Apr 7 01:10:40 UTC 2015


Hi Max,

On 3/04/2015 5:38 AM, Max Ockner wrote:
> Hello,
> Please review this change:
>
> Bug:  https://bugs.openjdk.java.net/browse/JDK-8029630
> Webrev: http://cr.openjdk.java.net/~mockner/8029630.2/
> Summary: Existing error messages for vm crashes print the decimal
> representation of the current thread id. The message format has been
> changed to print the hex value of the thread id.

src/share/vm/runtime/thread.cpp

The change is incorrect and unnecessary. 'this' is a pointer type so 
INTPTR_FORMAT seems correct (though it may need p2i(this)?) while %x 
assumes 'this' is always 32-bit. Further INTPTR_FORMAT is already hex 
not decimal.

src/share/vm/utilities/vmError.cpp

As Thomas pointed out%x assumes 32-bit and so is incorrect for intx 
type. As intx is a typedef for intptr_t then INTPTR_FORMAT should be 
usable here as well.

David

> Tested with jtreg runtime to make sure nothing was broken. I tested the
> new functionality separately. I crashed the vm and examined the debugger
> output to make sure the hexadecimal thread id printed in the error
> message matched one of the threads listed by the debugger.
>
> Thanks,
> Max


More information about the hotspot-dev mailing list