[11u] RFR(S): 8223266: PPC64: Check for branch to illegal address before checking for mem serialization

Doerr, Martin martin.doerr at sap.com
Fri May 3 13:06:21 UTC 2019


Hi Gustavo,

thanks for addressing this issue.

The fix looks good to me.

I'd appreciate if you could use a term in the comment like quoted "Data Storage Interrupt" such that somebody reading the code has a change to find a description of these bits.

Also, please update copyrights before pushing.
I don't need for a new webrev for that.

I think it can get pushed once Götz' testing has completed.

Best regards,
Martin


-----Original Message-----
From: jdk-updates-dev <jdk-updates-dev-bounces at openjdk.java.net> On Behalf Of Lindenmaier, Goetz
Sent: Freitag, 3. Mai 2019 11:30
To: Gustavo Romero <gromero at linux.vnet.ibm.com>; jdk-updates-dev at openjdk.java.net
Subject: [CAUTION] RE: [11u] RFR(S): 8223266: PPC64: Check for branch to illegal address before checking for mem serialization

Hi Gustavo, 

thanks for fixing this issue this quickly.
I put the patch into our testing.

You please need to flag the bug as jdk11u-fix-request and 
add the correspornding 'Fix Request' comment referring to 
this review thread.

Looking at the issue:
actually the current VM would think the signal is a 
memory serialization and return true, while it is 
a real crash? (Or a simulated one as in the test?)

Best regards,
  Goetz.




> -----Original Message-----
> From: Gustavo Romero <gromero at linux.vnet.ibm.com>
> Sent: Freitag, 3. Mai 2019 00:41
> To: jdk-updates-dev at openjdk.java.net; Lindenmaier, Goetz
> <goetz.lindenmaier at sap.com>
> Subject: [11u] RFR(S): 8223266: PPC64: Check for branch to illegal address
> before checking for mem serialization
> Importance: High
> 
> Hi,
> 
> Could the following small change be reviewed please?
> 
> Bug   : https://bugs.openjdk.java.net/browse/JDK-8223266
> Webrev: http://cr.openjdk.java.net/~gromero/8223266/v1/
> 
> It fixes the JVM signal handler on Linux / PPC64 to
> catch properly a SIGSEGV due to a branch to an invalid address (not
> mapped/not
> executable) on 11u.
> 
> A similar fix [0] was already downported to 11u but it's not sufficient to cover
> that case because UseMemBar feature is not obsoleted on 11u and additional
> code
> exists for checking memory serialization in the signal handler, hence before
> calling is_memory_serialization() it's necessary to check if the SIGSEGV is not
> caused due to a branch to an invalid address and then only (in case SIGSEGV is
> not caused due to a branch to an invalid address) call
> is_memory_serialization().
> 
> Thank you.
> 
> Best regards,
> Gustavo
> 
> [0] https://bugs.openjdk.java.net/browse/JDK-8221834



More information about the jdk-updates-dev mailing list