comparison src/share/vm/gc_implementation/g1/ptrQueue.cpp @ 1317:d4197f8d516a

6935821: G1: threads created during marking do not active their SATB queues Summary: Newly-created threads always had the active field of their SATB queue initialized to false, even if they were created during marking. As a result, updates from threads created during a marking cycle were never enqueued and never processed. The fix includes remaining a method from active() to is_active() for readability and naming consistency. Reviewed-by: ysr, johnc
author tonyp
date Thu, 18 Mar 2010 12:14:59 -0400
parents 09646c4656ca
children c18cbe5936b8
comparison
equal deleted inserted replaced
1316:cc98cc548f51 1317:d4197f8d516a
23 */ 23 */
24 24
25 # include "incls/_precompiled.incl" 25 # include "incls/_precompiled.incl"
26 # include "incls/_ptrQueue.cpp.incl" 26 # include "incls/_ptrQueue.cpp.incl"
27 27
28 PtrQueue::PtrQueue(PtrQueueSet* qset_, bool perm) : 28 PtrQueue::PtrQueue(PtrQueueSet* qset_, bool perm, bool active) :
29 _qset(qset_), _buf(NULL), _index(0), _active(false), 29 _qset(qset_), _buf(NULL), _index(0), _active(active),
30 _perm(perm), _lock(NULL) 30 _perm(perm), _lock(NULL)
31 {} 31 {}
32 32
33 void PtrQueue::flush() { 33 void PtrQueue::flush() {
34 if (!_perm && _buf != NULL) { 34 if (!_perm && _buf != NULL) {