comparison src/share/vm/runtime/thread.cpp @ 806:821269eca479

6820167: GCALotAtAllSafepoints + FullGCALot(ScavengeALot) options crash JVM Summary: Short-circuit gc-a-lot attempts by non-JavaThreads; SkipGCALot c'tor to elide re-entrant gc-a-lot attempts. Reviewed-by: apetrusenko, jcoomes, jmasa, kamg
author ysr
date Thu, 11 Jun 2009 12:40:00 -0700
parents b9fba36710f2
children bd02caa94611
comparison
equal deleted inserted replaced
800:7295839252de 806:821269eca479
125 125
126 // plain initialization 126 // plain initialization
127 debug_only(_owned_locks = NULL;) 127 debug_only(_owned_locks = NULL;)
128 debug_only(_allow_allocation_count = 0;) 128 debug_only(_allow_allocation_count = 0;)
129 NOT_PRODUCT(_allow_safepoint_count = 0;) 129 NOT_PRODUCT(_allow_safepoint_count = 0;)
130 NOT_PRODUCT(_skip_gcalot = false;)
130 CHECK_UNHANDLED_OOPS_ONLY(_gc_locked_out_count = 0;) 131 CHECK_UNHANDLED_OOPS_ONLY(_gc_locked_out_count = 0;)
131 _jvmti_env_iteration_count = 0; 132 _jvmti_env_iteration_count = 0;
132 _vm_operation_started_count = 0; 133 _vm_operation_started_count = 0;
133 _vm_operation_completed_count = 0; 134 _vm_operation_completed_count = 0;
134 _current_pending_monitor = NULL; 135 _current_pending_monitor = NULL;
782 783
783 if (GCALotAtAllSafepoints) { 784 if (GCALotAtAllSafepoints) {
784 // We could enter a safepoint here and thus have a gc 785 // We could enter a safepoint here and thus have a gc
785 InterfaceSupport::check_gc_alot(); 786 InterfaceSupport::check_gc_alot();
786 } 787 }
787
788 #endif 788 #endif
789 } 789 }
790 #endif 790 #endif
791 791
792 bool Thread::is_in_stack(address adr) const { 792 bool Thread::is_in_stack(address adr) const {