# HG changeset patch # User tschatzl # Date 1518081357 -3600 # Node ID 808555a54e9cb16dad4fdb2296cd310bf96b2c1a # Parent c2aec276d36a5373b7bc1f3559879c557c83935d 8196883: G1RemSet::refine_card_concurrently doesn't need to check for cards in collection set Summary: Remove code related to collection set checking in that method. Reviewed-by: kbarrett, ehelin diff -r c2aec276d36a -r 808555a54e9c src/hotspot/share/gc/g1/g1RemSet.cpp --- a/src/hotspot/share/gc/g1/g1RemSet.cpp Tue Feb 06 22:26:13 2018 -0800 +++ b/src/hotspot/share/gc/g1/g1RemSet.cpp Thu Feb 08 10:15:57 2018 +0100 @@ -586,20 +586,6 @@ return; } - // While we are processing RSet buffers during the collection, we - // actually don't want to scan any cards on the collection set, - // since we don't want to update remembered sets with entries that - // point into the collection set, given that live objects from the - // collection set are about to move and such entries will be stale - // very soon. This change also deals with a reliability issue which - // involves scanning a card in the collection set and coming across - // an array that was being chunked and looking malformed. Note, - // however, that if evacuation fails, we have to scan any objects - // that were not moved and create any missing entries. - if (r->in_collection_set()) { - return; - } - // The result from the hot card cache insert call is either: // * pointer to the current card // (implying that the current card is not 'hot'), @@ -624,8 +610,7 @@ // Check whether the region formerly in the cache should be // ignored, as discussed earlier for the original card. The - // region could have been freed while in the cache. The cset is - // not relevant here, since we're in concurrent phase. + // region could have been freed while in the cache. if (!r->is_old_or_humongous()) { return; }