Add a specification to your grub commandline option in the /etc/default/grub
config file. This is the option that begins with GRUB_CMDLINE_LINUX_DEFAULT
.
Try adding the following reboot=pci
to that line. The changes would be:
Change from:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Change to:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci"
After making changes to your grub configuration you will have to run the update command to activate the change:
$ sudo update-grub
(The $ sign is important in the line above. It's indicating a terminal commandline from the user's prompt.)
There are other reboot flags you can test if that one fails. The options includes:
warm
- don’t set the cold reboot flag
cold
- set the cold reboot flag
bios
- reboot by jumping through the BIOS (only for X86_32)
smp
(reboot by executing reset on BSP or other CPU - only for X86_32)
triple
- force a triple fault - init
kbd
- use the keyboard controller. cold reset (default)
acpi
- use the RESET_REG in the FADT
efi
- use efi reset_system runtime service
pci
- use the so-called “PCI reset register”, CF9
force
- avoid anything that could hang
Also, you can try multiple parameters at the same time such as:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=warm,cold,bios,smp,triple,kbd,acpi,efi,pci,force"
Other details can be found at:
http://michalorman.com/2013/10/fix-ubuntu-freeze-during-restart