18.04 and 18.10 fail to boot nvme0: failed to set APST feature (-19)

I’m a relatively new Ubuntu user and I’ve bought a new laptop for developing. However, I’ve had a whole host of problems trying to get it working with Ubuntu. I’ve agonised over this for nearly two days and below I’ve tried to summarised the main issues I’m having:

Got these issues on both Ubuntu 18.04 and 18.10 and as a main install, so NOT dual booting with anything.

First issue: Ubuntu installer would not find my ssd m.2 drive to install.

  • First fix attempt: used acpi=off as a boot option which worked and was able to install.

  • Problem with this: after install I was not able to boot without acpi=off, which would then severly impede my laptop’s performance (only shows and uses one cpu core when I have 6. Any attempt to load without acpi=off results in the ‘nvme0: failed to set APST feature’ boot error.

  • Second fix attempt: used nvme_load=YES as boot option. This was more promising.

  • Problem with this: everything was working great and managed to boot Ubuntu fine. But, I then did the first software update it asks for and upon restart, back to the above error.

FWIW - I tried to install ArchLinux and that did work fine for a few hours until It froze and I had to power off with the power button, resulting in a different NVMe failure.

Edit: I must note that secure boot and fast boot is off and achi sata mode mode is on

This is my laptop specification:

American Megatrends motherboard bios version 7.004 (sorry I don’t know what more information I can give for this?) Intel® Core™ i7 Six Core Processor 8750H (2.2GHz, 4.1GHz Turbo) 16GB Corsair 2133MHz SODIMM DDR4 (2 x 8GB) NVIDIA® GeForce® MX150 - 2.0GB DDR5 Video RAM 512GB INTEL® 760p M.2 NVMe PCIe SSD

Would really appreciate any help on this. I fear I’m going to have to just use Windows until my hardware is supported.


Solution 1:

I finally got Ubuntu 18.10 to install. I added nvme_core.default_ps_max_latency_us=200 to my /etc/default/grub file.

So, it looks like this: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvme_core.default_ps_max_latency_us=200"

From this answer: EXT4-fs error after Ubuntu 17.04 upgrade

Now works like a dream.

Solution 2:

I had the same problem with two different drives on two different systems:

  • NUC8i3
  • NUC8i5

Adding as a kernel parameter nvme_core.default_ps_max_latency_us=1000 works either on Ubuntu 18.04.3 and Ubuntu 19.10.

Pay attention at the reboot: You need to add this string into /etc/default/grub and then update-grub. So if the system doesn't start, follow a guide to mount via a live system your partition, chroot into the installed one, add the string and update-grub.

It worked for me.