We stand with Palestine ✊ Free Palestine 🇵🇸

How to Fix NVMe Suspend-Resume Failures on Linux (Ubuntu as an Example)

Fix NVMe Suspend-Resume Failures on Linux

I finally made suspend feature work on my Linux laptop with NVME SSD after it gave me a headache the past few days. So how can you do that too?

Suspend failures are not specific to a particular distribution but occur across all Linux distributions, as long as you use an NVME SSD. What we’re going to do here is more of a workaround than a fix.

To fix the broken suspend and system freeze after the laptop resumes, you should add The IOMMU=soft kernel parameter to your Grub configuration file.

What Is IOMMU?

You can consider an input-output memory management unit (IOMMU) as a chipset component that connects a direct-memory-access–capable (DMA-capable) I/O bus (such as a disk drive) to the main memory.

That means the IOMMU helps to filter and remap interrupts from peripheral devices like SSD, for example.

Unfortunately, when you use Linux on NVMe SSD, the IOMMU does not work as it should when your laptop suspends, making it inoperable until you reset the system.

Until the bug is fixed via a Kernel or firmware update, as a workaround, add the kernel parameter “iommu=soft” to prevent the usage of the hardware IOMMU and use a software replacement.

How to Pass the “iommu=soft” Parameter to the Kernel?

To pass the “iommu=soft” parameter to the kernel:

  1. Open a terminal window and enter the following command line:
sudo nano /etc/default/grub
  1. Then add the kernel parameter “iommu=soft” to  “GRUB_CMDLINE_LINUX_DEFAULT” line as follow:
  1. Save the change and update the grub configuration file using the update-grub command as root:
sudo update-grub
  1. Reboot and enjoy.

💬 Finally, I hope Linux developers will fix this bug in the next release because we need this feature. Don’t we?

🌟 If you like my work you can support it on Liberapay or Buy Me a Coffee.

sniper1720

I’ve chosen to keep this blog free of AdSense and automated ads — making LTM one of the rare blogs that do. The only income comes from a handful of carefully selected affiliate links/banners (which, as you know, don’t go far). If you enjoy the blog, consider showing your support via

Every contribution helps!

Join the Discussion!

0 0 votes
Rate This Article
Subscribe
Notify of
guest
4 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments