RFR (S): 8205426: Humongous continues remembered set does not match humongous start region one in Kitchensink
Erik Helin
erik.helin at oracle.com
Fri Jul 6 12:09:59 UTC 2018
On 07/05/2018 09:16 AM, Thomas Schatzl wrote:
> http://cr.openjdk.java.net/~tschatzl/8205426/webrev.1 (full)
> http://cr.openjdk.java.net/~tschatzl/8205426/webrev.0_to_1 (diff, but
> almost useless due to many changes)
>
> That at least separates the concerns about humongous/regular region a
> bit.
This version looks much better to me as well, thanks for refactoring the
patch! I agree with Kim's comments and in addition I would also have
"inlined" is_interesting_humongous_region into
update_humongous_before_rebuild, so the `if` in
update_humongous_before_rebuild becomes:
bool is_type_array =
oop(r->humongous_start_region()->bottom())->is_typeArray());
if (is_live && is_type_array && !r->rem_set()->is_tracked()) {
r->rem_set()->set_state_updating();
selected_for_rebuild = true;
}
This change makes the comment easier to follow (at least for me).
The patch also uses so called "east-side-const" in g1ConcurrentMark.cpp,
but that doesn't matter too much since g1ConcurrentMark.cpp seems to use
both "west-side-const" and "east-side-const" in equal proportions (that
however should probably be cleaned up).
Thanks,
Erik
More information about the hotspot-gc-dev
mailing list