无法暂停NVMe M.2 SSD

我已经安装了三星Pro 960固态硬盘,这是一个NVMe M.2 Gen 3.0 x 4固态硬盘,但是在Ubuntu 16.04中它冻结试图暂停和恢复。 它在Windows 10中运行正常。

lsblk信息

$ lsdrv NAME FSTYPE LABEL MOUNTPOINT SIZE MODEL sda 931.5G HGST HTS721010A9 ├─sda4 ntfs WINRETOOLS 450M ├─sda2 128M ├─sda5 ntfs Image 11.4G ├─sda3 ntfs HGST_Win10 /mnt/d 919G └─sda1 vfat ESP 500M nvme0n1 477G Samsung SSD 960 PRO 512GB ├─nvme0n1p5 ext4 NVMe_Ubuntu_16.0 / 44.6G ├─nvme0n1p3 16M ├─nvme0n1p1 ntfs 450M ├─nvme0n1p6 swap Linux Swap [SWAP] 7.9G ├─nvme0n1p4 ntfs NVMe_Win10 /mnt/c 414.9G ├─nvme0n1p2 vfat /boot/efi 99M └─nvme0n1p7 ntfs Shared_WSL+Linux /mnt/e 9G 

lspci信息

 $ lspci 00:00.0 Host bridge: Intel Corporation Sky Lake Host Bridge/DRAM Registers (rev 07) 00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06) 00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 07) 00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31) 00:14.2 Signal processing controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31) 00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31) 00:17.0 SATA controller: Intel Corporation Sunrise Point-H SATA Controller [AHCI mode] (rev 31) 00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #1 (rev f1) 00:1c.4 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #5 (rev f1) 00:1c.5 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #6 (rev f1) 00:1c.6 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #7 (rev f1) 00:1d.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #9 (rev f1) 00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31) 00:1f.2 Memory controller: Intel Corporation Sunrise Point-H PMC (rev 31) 00:1f.3 Audio device: Intel Corporation Sunrise Point-H HD Audio (rev 31) 00:1f.4 SMBus: Intel Corporation Sunrise Point-H SMBus (rev 31) 01:00.0 3D controller: NVIDIA Corporation GM204M [GeForce GTX 970M] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GM204 High Definition Audio Controller (rev a1) 02:00.0 PCI bridge: Intel Corporation Device 1576 03:00.0 PCI bridge: Intel Corporation Device 1576 03:01.0 PCI bridge: Intel Corporation Device 1576 03:02.0 PCI bridge: Intel Corporation Device 1576 39:00.0 USB controller: Intel Corporation Device 15b5 3b:00.0 Ethernet controller: Qualcomm Atheros Killer E2400 Gigabit Ethernet Controller (rev 10) 3c:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32) 3d:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5227 PCI Express Card Reader (rev 01) 3e:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a804 

补丁https://patchwork.kernel.org/patch/10212201/将正确修复此问题,它也应该被移植到较旧的内核,所以希望你的NVMe驱动器不需要任何解决方法,它也应该也修复了USB-C检测

NVMe SSD暂停/恢复是一个知道的bug

Launchpad和ArchLinux上已报告此问题。 解决方案是使用sudo powers编辑/etc/default/grub并找到该行:

 GRUB_CMDLINE_LINUX_DEFAULT="quiet kaslr acpiphp.disable=1 pcie_aspm=off nloglevel=3 udev.log-priority=3" 

您的选项会有所不同,但在双引号之间添加选项acpiphp.disable=1

保存文件并运行sudo update-grub

重启然后暂停和恢复将起作用,除非它是一个不同的问题。

acpihp.disable=1做什么用?

根据2013年的内核开发人员的说法,这会禁用ACPI热插拔。 但是,这并不意味着您的计算机上禁用了热插拔。 例如,将USB线重新插入Android手机会让Nautilus按原样查看文件。 还可以通过USB-C ThunderBolt 3连接到笔记本电脑的第二台电视机再循环到Displayport到HDMI适配器,重新组织工作区内的窗口。