< prev index next >

src/hotspot/share/gc/shared/cardTableBarrierSet.cpp

Print this page
rev 53862 : [mq]: java_attach_protocol
rev 53869 : [mq]: merge_attach

*** 192,206 **** assert(!_defer_initial_card_mark, "Should be false"); assert(thread->deferred_card_mark().is_empty(), "Should be empty"); #endif } ! void CardTableBarrierSet::on_thread_detach(JavaThread* thread) { // The deferred store barriers must all have been flushed to the // card-table (or other remembered set structure) before GC starts // processing the card-table (or other remembered set). ! flush_deferred_card_mark_barrier(thread); } bool CardTableBarrierSet::card_mark_must_follow_store() const { return _card_table->scanned_concurrently(); } --- 192,208 ---- assert(!_defer_initial_card_mark, "Should be false"); assert(thread->deferred_card_mark().is_empty(), "Should be empty"); #endif } ! void CardTableBarrierSet::on_thread_detach(Thread* thread) { // The deferred store barriers must all have been flushed to the // card-table (or other remembered set structure) before GC starts // processing the card-table (or other remembered set). ! if (thread->is_Java_thread()) { // Only relevant for Java threads. ! flush_deferred_card_mark_barrier((JavaThread*)thread); ! } } bool CardTableBarrierSet::card_mark_must_follow_store() const { return _card_table->scanned_concurrently(); }
< prev index next >