< prev index next >

src/hotspot/os/linux/os_perf_linux.cpp

Print this page
@@ -501,16 +501,16 @@
    _counters.nProcs = os::active_processor_count();
    _counters.cpus = NULL;
  }
  
  bool CPUPerformanceInterface::CPUPerformance::initialize() {
-   size_t tick_array_size = (_counters.nProcs +1) * sizeof(os::Linux::CPUPerfTicks);
-   _counters.cpus = (os::Linux::CPUPerfTicks*)NEW_C_HEAP_ARRAY(char, tick_array_size, mtInternal);
+   size_t array_entry_count = _counters.nProcs + 1;
+   _counters.cpus = NEW_C_HEAP_ARRAY(os::Linux::CPUPerfTicks, array_entry_count, mtInternal);
    if (NULL == _counters.cpus) {
      return false;
    }
-   memset(_counters.cpus, 0, tick_array_size);
+   memset(_counters.cpus, 0, array_entry_count * sizeof(*_counters.cpus));
  
    // For the CPU load total
    os::Linux::get_tick_information(&_counters.cpus[_counters.nProcs], -1);
  
    // For each CPU
< prev index next >