18.04 and 18.10 fail to boot nvme0: failed to set APST feature (-19)
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.
Related videos on Youtube
Will Busby
Updated on September 18, 2022Comments
-
Will Busby over 1 year
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.
-
PhysicsDave over 3 yearsThx for this question, just purchased (Dec 2020) MSI B460 board with Samsung 970 eve ssd and needed your solution otherwise the system just conked out as you describe.
-
Michel Andrade almost 5 yearsHi! I got the error: failed to get canonical path of '/cow' when run 'sudo update-grup'
-
nobody almost 4 yearsyou forgot to mention that
sudo update-grub
must be run afterwards. -
w1th0utnam3 over 3 yearsI had a similar problem with my NUC10i3 and a Kingston A2000 250GB NVMe SSD on Ubuntu Mate 20.10. But the problem would only occur during shutdown/restart. It caused timeouts, resulting in super slow (several minute) long shutdowns. For now it seems like it was fixed for me with
nvme_core.default_ps_max_latency_us=5500
as recommended here: wiki.archlinux.org/index.php/Talk:Solid_state_drive/… -
PhysicsDave over 3 yearsThx for this answer, just purchased (Dec 2020) MSI B460 board with Samsung 970 evo ssd and needed your solution otherwise the system just conked out as you describe. System was unstable but I quickly after boot did sudo "nano /etc/default/grub" and "sudo update-grub" before the system went nuts. Working fine now.
-
mimrock over 3 yearsIn case you cannot even boot, you can press
e
on the grub item you want to boot, and addnvme_core.default_ps_max_latency_us=5500
at the end of the line starting withlinux
. This will change the kernel parameter for that one boot, so you can properly update grub config.