RFR (XXS): 8165153: Crash in rebuild_cpu_to_node_map
David Holmes
david.holmes at oracle.com
Wed Sep 7 01:00:57 UTC 2016
webrev: http://cr.openjdk.java.net/~dholmes/8165153/webrev/
Bug: https://bugs.openjdk.java.net/browse/JDK-8165153
The NUMA rebuild_cpu_to_node_map code is intended to map from physical
CPU ID's to nodes on a system. To determine how many CPUs there are it
uses os::active_processor_count(). That is actually incorrect as it
needs to how many CPUs the system has, not how many have been made
available to the JVM. This worked** in the past because the
active_processor_count() returned the number of online CPUs. However,
after the fix for 6515172, it returned the number of available CPUs, as
it should.
The fix is to change that code to use processor_count(), which is the
number of configured CPUs on the system.
Thanks,
David
** The old code would likely also fail if the number of online CPUs
dynamically increased after the JVM was started!
More information about the hotspot-runtime-dev
mailing list