< prev index next >

src/hotspot/share/gc/g1/dirtyCardQueue.cpp

Print this page
rev 52688 : imported patch pqs_threshold_types
rev 52689 : [mq]: tschatzl_review

*** 29,38 **** --- 29,39 ---- #include "gc/g1/g1ThreadLocalData.hpp" #include "gc/g1/heapRegionRemSet.hpp" #include "gc/shared/suspendibleThreadSet.hpp" #include "gc/shared/workgroup.hpp" #include "runtime/atomic.hpp" + #include "runtime/flags/flagSetting.hpp" #include "runtime/mutexLocker.hpp" #include "runtime/safepoint.hpp" #include "runtime/thread.inline.hpp" #include "runtime/threadSMR.hpp"
*** 146,163 **** return (uint)os::initial_active_processor_count(); } void DirtyCardQueueSet::initialize(Monitor* cbl_mon, BufferNode::Allocator* allocator, - int process_completed_threshold, - int max_completed_queue, Mutex* lock, bool init_free_ids) { ! PtrQueueSet::initialize(cbl_mon, ! allocator, ! process_completed_threshold, ! max_completed_queue); _shared_dirty_card_queue.set_lock(lock); if (init_free_ids) { _free_ids = new FreeIdSet(num_par_ids(), _cbl_mon); } } --- 147,159 ---- return (uint)os::initial_active_processor_count(); } void DirtyCardQueueSet::initialize(Monitor* cbl_mon, BufferNode::Allocator* allocator, Mutex* lock, bool init_free_ids) { ! PtrQueueSet::initialize(cbl_mon, allocator); _shared_dirty_card_queue.set_lock(lock); if (init_free_ids) { _free_ids = new FreeIdSet(num_par_ids(), _cbl_mon); } }
*** 332,346 **** void DirtyCardQueueSet::concatenate_logs() { // Iterate over all the threads, if we find a partial log add it to // the global list of logs. Temporarily turn off the limit on the number // of outstanding buffers. - int save_max_completed_queue = _max_completed_queue; - _max_completed_queue = max_jint; assert(SafepointSynchronize::is_at_safepoint(), "Must be at safepoint."); for (JavaThreadIteratorWithHandle jtiwh; JavaThread *t = jtiwh.next(); ) { concatenate_log(G1ThreadLocalData::dirty_card_queue(t)); } concatenate_log(_shared_dirty_card_queue); - // Restore the completed buffer queue limit. - _max_completed_queue = save_max_completed_queue; } --- 328,340 ---- void DirtyCardQueueSet::concatenate_logs() { // Iterate over all the threads, if we find a partial log add it to // the global list of logs. Temporarily turn off the limit on the number // of outstanding buffers. assert(SafepointSynchronize::is_at_safepoint(), "Must be at safepoint."); + SizeTFlagSetting local_max(_max_completed_buffers, + MaxCompletedBuffersUnlimited); for (JavaThreadIteratorWithHandle jtiwh; JavaThread *t = jtiwh.next(); ) { concatenate_log(G1ThreadLocalData::dirty_card_queue(t)); } concatenate_log(_shared_dirty_card_queue); }
< prev index next >