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 15:16:50 UTC 2016


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... :)

> 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.

I added the test to the requires gc_g1 group to make sure it is only
run when both parallel and g1 are compiled in. This seems to be the
thing to do if you want to test specifically on g1 and other collectors
only. See TestSystemGC.java (I think) in the same directory.

Not sure.

Thanks,
  Thomas



More information about the hotspot-gc-dev mailing list