RFR (S): 8135025: Error message is repeated for large value at G1ConcRefinementThreads

Thomas Schatzl thomas.schatzl at oracle.com
Tue Sep 8 21:36:05 UTC 2015


Hi Kim,

On Tue, 2015-09-08 at 14:03 -0700, sangheon.kim wrote:
> Hi Thomas,
> 
> On 09/08/2015 01:17 PM, Thomas Schatzl wrote:
> > Hi,
> >
> > On Tue, 2015-09-08 at 12:28 -0700, sangheon.kim wrote:
> >> Hi all,
> >>
> >> After some discussion, I decided to propose this webrev.01 version which
> >> has different style from webrev.00.
> >>
> >> The difference is to add public factory function and privatize the
> >> constructor.
> >> So that newly added 'public bool initialize_threads() (from webrev.00)'
> >> is not needed.
> >> With this approach we can minimize public function and handle the error
> >> situation correctly.
> >>
> >> Can I get some reviews for this?
> >> http://cr.openjdk.java.net/~sangheki/8135025/webrev.01/
> > - what's the purpose of "returning" an error code when the next
> > statement will shut down the VM?
> >
> > E.g.
> >
> >    56     *ecode = JNI_ENOMEM;
> >    57     vm_shutdown_during_initialization("Could not create ConcurrentG1Refine");
> >    58     return NULL;
> vm_shutdown_during_initialization() just prints out error message while 
> vm_exit_during_initialization() finally aborts.

Okay, that's what I was missing. Thanks for the clarification.

> So this error code will propagate to its caller to do appropriate things 
> to shutdown.
> 
> You can see similar handling from G1CollectedHeap::initialize().
> 
> >
> > - please add a sentence as documentation what
> > ConcurrentG1Refine::create() is supposed to create/do.
> Okay.
> 
> Here's next version of webrev.
> http://cr.openjdk.java.net/~sangheki/8135025/webrev.02

Looks good.

Thanks,
  Thomas





More information about the hotspot-gc-dev mailing list