RFR (S): 8151499: gc/g1/g1OopClosures.inline.hpp: assert(_from->is_in_reserved(p)) failed: p is not in from

Thomas Schatzl thomas.schatzl at oracle.com
Fri Apr 1 16:52:17 UTC 2016


On Fri, 2016-04-01 at 11:38 -0400, Tom Benson wrote:
> Hi,
> 
> On 4/1/2016 11:16 AM, Thomas Schatzl wrote:
> > Hi,
> > 
> > On Fri, 2016-04-01 at 10:41 -0400, Tom Benson wrote:
> > > Hi Thomas,
> > > 
> > > It doesn't seem like the test at line 181 is strictly necessary,
> > > because
> > > the comparison on the following line would fail if it was false:
> > > 
> > >    181           _g1->heap_region_containing(p)->is_humongous()
> > > &&
> > >    182           _from->humongous_start_region() == _g1
> > > ->heap_region_containing(p)->humongous_start_region())
> > 182 would then sigsev and fail if p were not in a humongous region,
> > yes. Humongous_start_region() is NULL for non-humongous regions. I
> > prefer an assert message though... :)
> 
> Right,  _g1 ->heap_region_containing(p)->humongous_start_region())  
> would return NULL, and thus not be == to _from
> ->humongous_start_region() 
> .    Shouldn't SEGV...  ?

Oh, okay. Yes, of course. Sorry.

> > > Also, should the test require be expanded to   @requires vm.gc ==
> > > "G1" |
> > > vm.gc == null   ?
> > One of the tests runs uses parallel gc, so we only allow no gc
> > specified.
> 
> OK.  I thought you'd want it run even if G1 was explicit.
> Tom

Thanks,
  Thomas



More information about the hotspot-gc-dev mailing list