Ubuntu boots to black screen after restart but works after being shutdown

After some more meddling, I've found a solution: just edit GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" to GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci" and run sudo update-grub (or do the same using grub-customizer).

Other possible values:

  • 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