< prev index next >

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

Print this page
rev 53582 : imported patch rename

*** 1,7 **** /* ! * Copyright (c) 2001, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2001, 2019, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 24,33 **** --- 24,34 ---- #include "precompiled.hpp" #include "gc/g1/g1BarrierSet.hpp" #include "gc/g1/g1ConcurrentRefine.hpp" #include "gc/g1/g1ConcurrentRefineThread.hpp" + #include "gc/g1/g1DirtyCardQueue.hpp" #include "gc/shared/suspendibleThreadSet.hpp" #include "logging/log.hpp" #include "memory/resourceArea.hpp" #include "runtime/handles.inline.hpp" #include "runtime/mutexLocker.hpp"
*** 63,93 **** _monitor->wait(Mutex::_no_safepoint_check_flag); } } bool G1ConcurrentRefineThread::is_active() { ! DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); return is_primary() ? dcqs.process_completed_buffers() : _active; } void G1ConcurrentRefineThread::activate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { set_active(true); } else { ! DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); dcqs.set_process_completed_buffers(true); } _monitor->notify(); } void G1ConcurrentRefineThread::deactivate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { set_active(false); } else { ! DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); dcqs.set_process_completed_buffers(false); } } void G1ConcurrentRefineThread::run_service() { --- 64,94 ---- _monitor->wait(Mutex::_no_safepoint_check_flag); } } bool G1ConcurrentRefineThread::is_active() { ! G1DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); return is_primary() ? dcqs.process_completed_buffers() : _active; } void G1ConcurrentRefineThread::activate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { set_active(true); } else { ! G1DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); dcqs.set_process_completed_buffers(true); } _monitor->notify(); } void G1ConcurrentRefineThread::deactivate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { set_active(false); } else { ! G1DirtyCardQueueSet& dcqs = G1BarrierSet::dirty_card_queue_set(); dcqs.set_process_completed_buffers(false); } } void G1ConcurrentRefineThread::run_service() {
< prev index next >