src/share/vm/runtime/safepoint.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hsx-gc Sdiff src/share/vm/runtime

src/share/vm/runtime/safepoint.cpp

Print this page
rev 3849 : imported patch thread.inline.hpp


  31 #include "code/pcDesc.hpp"
  32 #include "code/scopeDesc.hpp"
  33 #include "gc_interface/collectedHeap.hpp"
  34 #include "interpreter/interpreter.hpp"
  35 #include "memory/resourceArea.hpp"
  36 #include "memory/universe.inline.hpp"
  37 #include "oops/oop.inline.hpp"
  38 #include "oops/symbol.hpp"
  39 #include "runtime/compilationPolicy.hpp"
  40 #include "runtime/deoptimization.hpp"
  41 #include "runtime/frame.inline.hpp"
  42 #include "runtime/interfaceSupport.hpp"
  43 #include "runtime/mutexLocker.hpp"
  44 #include "runtime/osThread.hpp"
  45 #include "runtime/safepoint.hpp"
  46 #include "runtime/signature.hpp"
  47 #include "runtime/stubCodeGenerator.hpp"
  48 #include "runtime/stubRoutines.hpp"
  49 #include "runtime/sweeper.hpp"
  50 #include "runtime/synchronizer.hpp"

  51 #include "services/memTracker.hpp"
  52 #include "services/runtimeService.hpp"
  53 #include "utilities/events.hpp"
  54 #ifdef TARGET_ARCH_x86
  55 # include "nativeInst_x86.hpp"
  56 # include "vmreg_x86.inline.hpp"
  57 #endif
  58 #ifdef TARGET_ARCH_sparc
  59 # include "nativeInst_sparc.hpp"
  60 # include "vmreg_sparc.inline.hpp"
  61 #endif
  62 #ifdef TARGET_ARCH_zero
  63 # include "nativeInst_zero.hpp"
  64 # include "vmreg_zero.inline.hpp"
  65 #endif
  66 #ifdef TARGET_ARCH_arm
  67 # include "nativeInst_arm.hpp"
  68 # include "vmreg_arm.inline.hpp"
  69 #endif
  70 #ifdef TARGET_ARCH_ppc
  71 # include "nativeInst_ppc.hpp"
  72 # include "vmreg_ppc.inline.hpp"
  73 #endif
  74 #ifdef TARGET_OS_FAMILY_linux
  75 # include "thread_linux.inline.hpp"
  76 #endif
  77 #ifdef TARGET_OS_FAMILY_solaris
  78 # include "thread_solaris.inline.hpp"
  79 #endif
  80 #ifdef TARGET_OS_FAMILY_windows
  81 # include "thread_windows.inline.hpp"
  82 #endif
  83 #ifdef TARGET_OS_FAMILY_bsd
  84 # include "thread_bsd.inline.hpp"
  85 #endif
  86 #ifndef SERIALGC
  87 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
  88 #include "gc_implementation/shared/concurrentGCThread.hpp"
  89 #endif
  90 #ifdef COMPILER1
  91 #include "c1/c1_globals.hpp"
  92 #endif
  93 
  94 // --------------------------------------------------------------------------------------------------
  95 // Implementation of Safepoint begin/end
  96 
  97 SafepointSynchronize::SynchronizeState volatile SafepointSynchronize::_state = SafepointSynchronize::_not_synchronized;
  98 volatile int  SafepointSynchronize::_waiting_to_block = 0;
  99 volatile int SafepointSynchronize::_safepoint_counter = 0;
 100 int SafepointSynchronize::_current_jni_active_count = 0;
 101 long  SafepointSynchronize::_end_of_last_safepoint = 0;
 102 static volatile int PageArmed = 0 ;        // safepoint polling page is RO|RW vs PROT_NONE
 103 static volatile int TryingToBlock = 0 ;    // proximate value -- for advisory use only
 104 static bool timeout_error_printed = false;




  31 #include "code/pcDesc.hpp"
  32 #include "code/scopeDesc.hpp"
  33 #include "gc_interface/collectedHeap.hpp"
  34 #include "interpreter/interpreter.hpp"
  35 #include "memory/resourceArea.hpp"
  36 #include "memory/universe.inline.hpp"
  37 #include "oops/oop.inline.hpp"
  38 #include "oops/symbol.hpp"
  39 #include "runtime/compilationPolicy.hpp"
  40 #include "runtime/deoptimization.hpp"
  41 #include "runtime/frame.inline.hpp"
  42 #include "runtime/interfaceSupport.hpp"
  43 #include "runtime/mutexLocker.hpp"
  44 #include "runtime/osThread.hpp"
  45 #include "runtime/safepoint.hpp"
  46 #include "runtime/signature.hpp"
  47 #include "runtime/stubCodeGenerator.hpp"
  48 #include "runtime/stubRoutines.hpp"
  49 #include "runtime/sweeper.hpp"
  50 #include "runtime/synchronizer.hpp"
  51 #include "runtime/thread.inline.hpp"
  52 #include "services/memTracker.hpp"
  53 #include "services/runtimeService.hpp"
  54 #include "utilities/events.hpp"
  55 #ifdef TARGET_ARCH_x86
  56 # include "nativeInst_x86.hpp"
  57 # include "vmreg_x86.inline.hpp"
  58 #endif
  59 #ifdef TARGET_ARCH_sparc
  60 # include "nativeInst_sparc.hpp"
  61 # include "vmreg_sparc.inline.hpp"
  62 #endif
  63 #ifdef TARGET_ARCH_zero
  64 # include "nativeInst_zero.hpp"
  65 # include "vmreg_zero.inline.hpp"
  66 #endif
  67 #ifdef TARGET_ARCH_arm
  68 # include "nativeInst_arm.hpp"
  69 # include "vmreg_arm.inline.hpp"
  70 #endif
  71 #ifdef TARGET_ARCH_ppc
  72 # include "nativeInst_ppc.hpp"
  73 # include "vmreg_ppc.inline.hpp"












  74 #endif
  75 #ifndef SERIALGC
  76 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
  77 #include "gc_implementation/shared/concurrentGCThread.hpp"
  78 #endif
  79 #ifdef COMPILER1
  80 #include "c1/c1_globals.hpp"
  81 #endif
  82 
  83 // --------------------------------------------------------------------------------------------------
  84 // Implementation of Safepoint begin/end
  85 
  86 SafepointSynchronize::SynchronizeState volatile SafepointSynchronize::_state = SafepointSynchronize::_not_synchronized;
  87 volatile int  SafepointSynchronize::_waiting_to_block = 0;
  88 volatile int SafepointSynchronize::_safepoint_counter = 0;
  89 int SafepointSynchronize::_current_jni_active_count = 0;
  90 long  SafepointSynchronize::_end_of_last_safepoint = 0;
  91 static volatile int PageArmed = 0 ;        // safepoint polling page is RO|RW vs PROT_NONE
  92 static volatile int TryingToBlock = 0 ;    // proximate value -- for advisory use only
  93 static bool timeout_error_printed = false;


src/share/vm/runtime/safepoint.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File