RFR 8058113 Execution of OnOutOfMemoryError command hangs on linux-sparc

Gerald Thornbrugh gerald.thornbrugh at oracle.com
Mon Feb 2 23:42:06 UTC 2015

Hi Dan,

Thanks for the review.

> On 2/2/15 4:21 PM, Gerald Thornbrugh wrote:
>> Hi,
>> Please review my JDK7u change for JDK-8058113, "Execution of 
>> OnOutOfMemoryError command hangs on linux-sparc"
>> The linux fork_and_exec() function in os_linux.cpp requires that a 
>> call be made directly to "syscall(fork)" to
>> stay multi-thread safe.  The linux/sparc version of "syscall(fork)" 
>> returns the "is_child" flag in a register that
>> is used to determine if the current thread is the child thread. This 
>> change creates the function sparc_fork()
>> that uses the correct assembly code to call the linux/sparc version 
>> of "syscall(fork)" and returns the process
>> id and "is child" flag.
>> Webrev: 
>> http://cr.openjdk.java.net/~dcubed/gthornbr/8058113-webrev/5-for-jdk7u/
> src/os/linux/vm/os_linux.cpp
>     No comments.
> Thumbs up.
> Dan
>> It was determined that this fix should not be putback into JDK8 or 
>> JDK9.  A bug will be filed to look into
>> a better way of doing a multi-thread safe "fork and exec" for all 
>> linux platforms in JDK8 and JDK9.
>> I have completed JPRT and Aurora test runs on all platforms including 
>> 32 and 64 bit linux platforms without issues.
>> I have also completed JDK7u JPRT testing on linux/sparc 64 bit 
>> platforms without issues.
>> I also ran the OnOutOfMemoryError test on linux/sparc 64 bit platform 
>> and the fix addressed the issue.
>> Thanks,
>> Gerald

More information about the hotspot-runtime-dev mailing list