[kwlug-disc] NVMe and PCIe ASPM ...

Khalid Baheyeldin kb at 2bits.com
Thu Mar 19 11:20:51 EDT 2026


I alluded to this in a previous message, so here are the details.

I got a used 2019 Intel NUC to replace the Raspberry Pi 4 that is
running Home Assistant.

The Pi worked well for many years, but after I moved WeeWx to it, one
CPU is tied up for some time running only that.
It still can cope, but I don't want to continue running from an SD card.

So the NUC was equipped with a used M.2 NVMe SSD.

But the machine would freeze after several hours, despite not running
anything at all yet.

I did testing for several days per iteration

- Running from a 2.5" SSD in a USB case (works fine)
- Same 2.5" SSD connected internally over SATA (works fine)
- NVMe in a USB case (works fine)
- NVMe internally via M.2 (this one hangs)

As an experiment, I used CoPilot to see what can be done about this issue.
It recommended several kernel parameters, such as:

nvme_core.default_ps_max_latency_us=0
nvme.noacpi=1
nvme_core.force_apst=0
pcie_aspm=off

None of the above worked.

I also tried updating the BIOS, but still, it froze after several hours.

What worked was
- Changing the BIOS "Power" profile from "Performance" to "Balanced"
- Disabling "PCIe ASPM" (though one of the kernel parameters is
supposed to do that)

And that made the NUC very stable.

Maybe this will help someone ...
-- 
Khalid M. Baheyeldin


More information about the kwlug-disc mailing list