Mercurial > hg > graal-compiler
comparison src/share/vm/gc_implementation/g1/g1EvacFailure.hpp @ 4837:eff609af17d7
7127706: G1: re-enable survivors during the initial-mark pause
Summary: Re-enable survivors during the initial-mark pause. Afterwards, the concurrent marking threads have to scan them and mark everything reachable from them. The next GC will have to wait for the survivors to be scanned.
Reviewed-by: brutisso, johnc
author | tonyp |
---|---|
date | Wed, 25 Jan 2012 12:58:23 -0500 |
parents | d30fa85f9994 |
children | d55c004e1d4d |
comparison
equal
deleted
inserted
replaced
4836:d30fa85f9994 | 4837:eff609af17d7 |
---|---|
125 // still pointed to be roots. During concurrent marking, and | 125 // still pointed to be roots. During concurrent marking, and |
126 // after initial-mark, we don't need to mark any objects | 126 // after initial-mark, we don't need to mark any objects |
127 // explicitly and all objects in the CSet are considered | 127 // explicitly and all objects in the CSet are considered |
128 // (implicitly) live. So, we won't mark them explicitly and | 128 // (implicitly) live. So, we won't mark them explicitly and |
129 // we'll leave them over NTAMS. | 129 // we'll leave them over NTAMS. |
130 _cm->grayRoot(obj, obj_size, _worker_id); | 130 _cm->grayRoot(obj, obj_size, _worker_id, _hr); |
131 } | 131 } |
132 _marked_bytes += (obj_size * HeapWordSize); | 132 _marked_bytes += (obj_size * HeapWordSize); |
133 obj->set_mark(markOopDesc::prototype()); | 133 obj->set_mark(markOopDesc::prototype()); |
134 | 134 |
135 // While we were processing RSet buffers during the collection, | 135 // While we were processing RSet buffers during the collection, |