8014022: G1: Non Java threads should lock the shared SATB queue lock without safepoint checks

Reviewed-by: tschatzl, brutisso, jmasa, ysr
This commit is contained in:
Per Liden 2013-06-30 21:42:07 +02:00 committed by Bengt Rutisson
parent f72bcd09ec
commit 36967c98e4

View file

@ -47,7 +47,7 @@ void G1SATBCardTableModRefBS::enqueue(oop pre_val) {
JavaThread* jt = (JavaThread*)thr;
jt->satb_mark_queue().enqueue(pre_val);
} else {
MutexLocker x(Shared_SATB_Q_lock);
MutexLockerEx x(Shared_SATB_Q_lock, Mutex::_no_safepoint_check_flag);
JavaThread::satb_mark_queue_set().shared_satb_queue()->enqueue(pre_val);
}
}