(jdk10) RFR(xxs): 8176872: [s390] wrong pc shown in error logs

Thomas Stüfe thomas.stuefe at gmail.com
Tue Mar 21 13:40:58 UTC 2017


Hi all,

please take a look at this tiny fix. It fixes the pc shown as faulting
address for SIGILL and SIGFPE in hs_err files.

https://bugs.openjdk.java.net/browse/JDK-8176872
http://cr.openjdk.java.net/~stuefe/webrevs/8176872-s390-wrong-pc-in-errorlogs/jdk10-webrev.00/webrev/

When determining the crash pc, in all posix platform signal handlers pc is
taken from the context. However, context.pc on zlinux points to the
instruction *after* the faulting op. The correct way, according to POSIX,
would be to take the address from siginfo_t->si_addr for signals SIGILL,
SIGFPE.

(actually, this patch would make sense for all POSIX platforms, but only
s390 seems to show this error, so I leave the patch local to s390.)

Kind Regards, Thomas


More information about the hotspot-runtime-dev mailing list