When booting or rebooting Oracle Solaris 11.2 SRU10 or newer, the system might become unresponsive (hang).
During a normal boot, the system hangs just after it displays "All rights reserved" and before it displays "Hostname":
SunOS Release 5.11 Version 11.2 64-bit Copyright (c) 1983, 2015, Oracle and/or its affiliates. All rights reserved. (Messages stop here) Hostname: myhostname
In verbose boot mode (the -v kernel boot option) the system hangs when it brings the CPUs online. For example:
SunOS Release 5.11 Version 11.2 64-bit Copyright (c) 1983, 2015, Oracle and/or its affiliates. All rights reserved. cpu0: x86 (chipid 0x0 GenuineIntel 306F4 family 6 model 63 step 4 clock 2600 MHz) cpu0: Intel(r) Xeon(r) CPU E7-8895 v3 @ 2.60GHz initialized cpu module 'cpu.generic' on chip 0 core 1 strand 0 initialized model-specific module 'cpu_ms.GenuineIntel' on chip 0 core 1 strand 0 acpinex: cpu@2, cpudrv2 /fw/sb@0/socket@0/cpu@2 (cpudrv2) online cpu1: x86 (chipid 0x0 GenuineIntel 306F4 family 6 model 63 step 4 clock 2600 MH) cpu1: Intel(r) Xeon(r) CPU E7-8895 v3 @ 2.60GHz cpu1 initialization complete - online (Messages stop here)
Workaround
Use one of the following three options:
Reboot or power cycle the system. It might boot successfully.
Modify power management-related parameters and reboot:
Add the following to /etc/system:
set idle_cpu_no_deep_c=1
set idle_cpu_prefer_mwait=0
Enter the command: bootadm update-archive
Reboot the system.
For a temporary solution or to start a non-booting system:
To boot into the kernel debugger, add -kd to the grub entry on the kernel line.
In the debugger, type:
idle_cpu_no_deep_c/W 1
idle_cpu_prefer_mwait/W 0
:c