RFR: 2178143: VM crashes if the number of bound CPUs changed during runtime
Daniel D. Daugherty
daniel.daugherty at oracle.com
Wed Mar 20 15:46:46 PDT 2013
On 3/20/13 3:27 PM, Yumin Qi wrote:
> Hi, can I have your code review of a small change?
> 2178143: VM crashes if the number of bound CPUs changed during runtime.
> Situation: Customer first configure only one CPU online and turn
> others offline to run java application, after java program started,
> bring more CPUs back online. Since VM started on a single CPU,
> os::is_MP() will return false, but after more CPUs available, OS will
> schedule the app run on multiple CPUs, this caused SEGV in various
> places where data consistency was broken. The solution is supply a
> flag to assume it is running on MP, so lock is forced to be called.
The comments in the bug report indicate the possibility of using
the new NumberOfProcessors value as a hint for number of GC threads
with some sort of upper cap (32). I don't see that change here so
I'm guessing that may come via some other changeset...
3253 // NumberOfProcessors is a flag used to assume underlying
architecture is MP
Instead of "assume" how about "hint that the" or "indicate that the".
Might have to break the comment on two lines.
3257 "NumberOfProcessors should be greater that 1", NULL);
typo: 'that 1' -> 'than 1'
461 "Assume number of
"Hint about number of processors (must be greater than 1)"
The above text is used by one of the special options for printing
info about the command line options.
More information about the hotspot-gc-dev