src/hotspot/os/solaris/os_perf_solaris.cpp
changeset 58083 9046db64ca39
parent 53911 65f2a401e0eb
child 58084 cddef3bde924
equal deleted inserted replaced
58081:8b08eaf9a0eb 58083:9046db64ca39
   298   if (_counters.nProcs == 0) {
   298   if (_counters.nProcs == 0) {
   299     return false;
   299     return false;
   300   }
   300   }
   301 
   301 
   302   // Data structure(s) for saving CPU load (one per CPU)
   302   // Data structure(s) for saving CPU load (one per CPU)
   303   size_t tick_array_size = _counters.nProcs * sizeof(CPUPerfTicks);
   303   size_t array_entry_count = _counters.nProcs;
   304   _counters.jvmTicks = (CPUPerfTicks*)NEW_C_HEAP_ARRAY(char, tick_array_size, mtInternal);
   304   _counters.jvmTicks = NEW_C_HEAP_ARRAY(CPUPerfTicks, array_entry_count, mtInternal);
   305   if (NULL == _counters.jvmTicks) {
   305   if (NULL == _counters.jvmTicks) {
   306     return false;
   306     return false;
   307   }
   307   }
   308   memset(_counters.jvmTicks, 0, tick_array_size);
   308   memset(_counters.jvmTicks, 0, array_entry_count * sizeof(*_counters.jvmTicks));
   309 
   309 
   310   // Get kstat cpu_stat counters for every CPU
   310   // Get kstat cpu_stat counters for every CPU
   311   // loop over kstat to find our cpu_stat(s)
   311   // loop over kstat to find our cpu_stat(s)
   312   int i = 0;
   312   int i = 0;
   313   for (kstat_t* kstat = _counters.kstat_ctrl->kc_chain; kstat != NULL; kstat = kstat->ks_next) {
   313   for (kstat_t* kstat = _counters.kstat_ctrl->kc_chain; kstat != NULL; kstat = kstat->ks_next) {