cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to write to P3700 on an ARM platform

KKish3
New Contributor

I am having problems with writing to an intel P3700 NVMe drive on a

ARM based platform and I would appreciate any help in debugging this

problem. Here are my experiments and observations so far:

  • The drive is usable for read operations and I can run fio (randread, etc) but I cannot write to it.
  • Other manufacturer's NVMe drive can be inserted into this platform and I can write to it
  • I can insert the intel P3700 into an x86 host and I can perform write operations
  • I have tried using the nvme-cli (https://github.com/linux-nvme/nvme-cli https://github.com/linux-nvme/nvme-cli) tool and have read the error codes from read. It just shows WRITE_FAULT which is not very

helpful

  • I have looked at the SmartLog reports and the 'Critical Warning' is 0, i.e. the device is not in Read-Only mode
  • I have updated the firmware using the intel SSD-DataCenterTool and updated the firmware on the drive the latest available version. The updated drive works fine on x86 platform.

I think there is some combination of the platform and drive that is causing the problem. Can anyone offer pointers on how to debug this?

I am using Linux/Ubuntu and accessing the drive directly (/dev/nvme1); Tried accessing with dd, nvme-cli and fio.

Thx

Kishore

8 REPLIES 8

jbenavides
Valued Contributor II

Hello krkishore,

Please keep in mind that the Intel® Solid-State Drive P3700 Series is meant to be used in Enterprise systems. Ubuntu Linux is not a supported Linux distribution for this drive. Please check the http://www.intel.com/content/dam/www/public/us/en/documents/product-specifications/ssd-dc-p3700-spec.pdf Intel® Solid-State Drive P3700 Series – Product Specification for details about feature details and compatibility.

We advise to check the Intel® Linux NVMe Driver Reference Guide, version 1.1.0.1004, this document has information that may help you. It can be downloaded from the following location:

https://downloadcenter.intel.com/download/23929/Intel-Solid-State-Drive-Data-Center-Family-for-PCIe-Drivers https://downloadcenter.intel.com/download/23929/Intel-Solid-State-Drive-Data-Center-Family-for-PCIe-Drivers

jbenavides
Valued Contributor II

Hello krkishore,

Please keep in mind that the Intel® Solid-State Drive P3700 Series is meant to be used in Enterprise systems. Ubuntu Linux is not a supported Linux distribution for this drive. Please check the http://www.intel.com/content/dam/www/public/us/en/documents/product-specifications/ssd-dc-p3700-spec... Intel® Solid-State Drive P3700 Series – Product Specification for details about feature details and compatibility.

We advise to check the Intel® Linux NVMe Driver Reference Guide, version 1.1.0.1004, this document has information that may help you. It can be downloaded from the following location:

https://downloadcenter.intel.com/download/23929/Intel-Solid-State-Drive-Data-Center-Family-for-PCIe-... https://downloadcenter.intel.com/download/23929/Intel-Solid-State-Drive-Data-Center-Family-for-PCIe-...

CChon3
New Contributor III
New Contributor III

When the driver is installed, it will have 2 handles: /dev/nvme0 /dev/nvme0n1

It seems that the wrong device handle is being used in your case, it should be /dev/nvmeXn1 that is used for reading/writing.

KKish3
New Contributor

Thanks for your reply.

As I mentioned earlier, Read operations work fine, Writes do not. The device handle is being used correctly.

I am also aware that ARM platform is not generally available and is therefore not tested.

If you have any pointers on how to access any information to debug this problem please let me know. I have tried accessing the SmartLog, Error log from the completion status of the write command and any other messages from dd, fio or nvme-cli. I am quite familiar with nvme spec and linux and I am looking for any experience any of you have may have in using these intel SSDs in a non-x86 platform. Again, as I stated in the original mail, the intel drives do operate correctly in a standard x86 server. It appears that some combination of firmware, platform and/or driver is not working well.

Thanks for your help

Kishore