8148771: os::active_processor_count() returns garbage which causes VM to crash
authordholmes
Mon, 01 Feb 2016 20:39:17 -0500
changeset 35902 c194dfa0a187
parent 35901 f5028c67e7cb
child 35904 ff8da306923e
8148771: os::active_processor_count() returns garbage which causes VM to crash Reviewed-by: kbarrett
hotspot/src/share/vm/gc/g1/concurrentMark.cpp
hotspot/src/share/vm/gc/g1/dirtyCardQueue.cpp
--- a/hotspot/src/share/vm/gc/g1/concurrentMark.cpp	Mon Feb 01 22:11:16 2016 +0100
+++ b/hotspot/src/share/vm/gc/g1/concurrentMark.cpp	Mon Feb 01 20:39:17 2016 -0500
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -489,11 +489,11 @@
     double overall_cm_overhead =
       (double) MaxGCPauseMillis * marking_overhead /
       (double) GCPauseIntervalMillis;
-    double cpu_ratio = 1.0 / (double) os::active_processor_count();
+    double cpu_ratio = 1.0 / (double) os::processor_count();
     double marking_thread_num = ceil(overall_cm_overhead / cpu_ratio);
     double marking_task_overhead =
       overall_cm_overhead / marking_thread_num *
-                                              (double) os::active_processor_count();
+                                              (double) os::processor_count();
     double sleep_factor =
                        (1.0 - marking_task_overhead) / marking_task_overhead;
 
--- a/hotspot/src/share/vm/gc/g1/dirtyCardQueue.cpp	Mon Feb 01 22:11:16 2016 +0100
+++ b/hotspot/src/share/vm/gc/g1/dirtyCardQueue.cpp	Mon Feb 01 20:39:17 2016 -0500
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -160,7 +160,7 @@
 
 // Determines how many mutator threads can process the buffers in parallel.
 uint DirtyCardQueueSet::num_par_ids() {
-  return (uint)os::active_processor_count();
+  return (uint)os::processor_count();
 }
 
 void DirtyCardQueueSet::initialize(CardTableEntryClosure* cl,