Hi,


Apologies if this is the incorrect medium in which to send patches.



There is a significant issue with the apst code that has been merged for
the nvme driver under kernels >= 4.11 . The issue impacts some versions of
Samsung’s firmware on sm961/pm961 and 960 nvme drives. The issue causes the
drive to go into ‘deep sleep’ without warning and no way of bringing the
interface back up.



Historically this issue has been reported against specific dell
hardware and there has been a hunk of code to check for the presence
of that hardware before calling NVME_QUIRK_NO_DEEPEST_PS. However I
can confirm that with nvme apst support merged this issue arises with
multiple mainboards. This is a critical issue because it can result in
data loss, the way in which the issue manifests does not alert the
user to the fact that the drive has dropped off.



There is however an extremely simple fix – just call the
NVME_QUIRK_NO_DEEPEST_PS quirk unconditionally with this hardware.



From: Dominic Robinson <git...@dcrdev.com>

Date: Fri, 1 Sep 2017 15:38:44 +0100

Subject: Turn off deepest power saving mode for pm961 drives

diff -aurN a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c

--- a/drivers/nvme/host/pci.c  2017-07-03 00:07:02.000000000 +0100

+++ b/drivers/nvme/host/pci.c  2017-09-01 15:38:44.041550898 +0100

@@ -2302,6 +2302,8 @@

               .driver_data = NVME_QUIRK_DELAY_BEFORE_CHK_RDY, },

        { PCI_DEVICE(0x1c5f, 0x0540),  /* Memblaze Pblaze4 adapter */

               .driver_data = NVME_QUIRK_DELAY_BEFORE_CHK_RDY, },

+       { PCI_DEVICE(0x144d, 0xa804),  /* Samsung pm961 */

+              .driver_data = NVME_QUIRK_NO_DEEPEST_PS, },

        { PCI_DEVICE_CLASS(PCI_CLASS_STORAGE_EXPRESS, 0xffffff) },

        { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2001) },

        { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2003) },



I have already filed a bug report – not getting a response:

https://bugzilla.redhat.com/show_bug.cgi?id=1487421



I can confirm this patch works – I’d really like to get it merged, as of
right now there are no available kernels in Fedora 26 that are immune to
this issue.



Kind Regards,

Dominic Robinson
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org

Reply via email to