none
Does Windows 8.1 support NVMe admin commands to access SMART info from SSD?

    Question

  • Hi, we are developing and testing our new "NVMe SSD" and toolbox.

    When we try to get SMART info from our NVMe SSD at Windows 8.1, we are having troubles that Windows 8.1 seems not pass "Get Log page" command which is one of NVMe admin commands.

    However, we can successfully get SMART info from SATA-based SSD without any issues.

    So, just wondering if Windows 8.1 natively support all NVMe admin commands, or we need to develop our own special driver instead of Windows in-box driver (StorNVMe.sys).

    Thanks in advance for any help.

    BR, 

    HJ


    • Edited by HJOH4300 Wednesday, February 11, 2015 4:42 PM typo fix
    Wednesday, February 11, 2015 4:40 PM

Answers

  • SMART is for ATA-port drivers, and as far as I know is not supported by Storport which is what the native NVME driver is.  It has been discussed before on this forum, that the NVME driver does not support all admin commands.


    Don Burn Windows Filesystem and Driver Consulting Website: http://www.windrvr.com

    Wednesday, February 11, 2015 4:45 PM

All replies

  • Are you trying to send these commands from an elevated application?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, February 11, 2015 4:45 PM
    Owner
  • SMART is for ATA-port drivers, and as far as I know is not supported by Storport which is what the native NVME driver is.  It has been discussed before on this forum, that the NVME driver does not support all admin commands.


    Don Burn Windows Filesystem and Driver Consulting Website: http://www.windrvr.com

    Wednesday, February 11, 2015 4:45 PM
  • Yes, we are trying to develop in-house toolbox to test our NVMe SSDs, and toolbox needs to get SMART/Health info from SSD through 'Get Log Page (02h)' command, which is one of NVMe Admin command set.

    Any idea? Thx

    Wednesday, February 11, 2015 7:24 PM
  • Thanks, I thought Windows in-box NVMe driver (StorNVMe.sys) supports all NVMe Admin command set. I guess SMART feature is defined in NVMe spec 1.0 as one of Admin command set (02h=Get Log Page) to provide SMART and general health information.

    So, do you think that Widows OS only can use native NVMe driver to fully access Admin command set? And other 3rd party tools (like benchmark tools) cannot access Admin command set?

    If so, I'm just wondering how users can get SMART / helath info from NVMe-based SSD in Windows environment...

    Thanks anyway.

    HJ

    Wednesday, February 11, 2015 7:35 PM
  • Hi HJ,

    StorNVMe.sys supports the admin commands internally. On win8.1, the miniport driver doesn't allow NVMe pass-though commands thus you cannot get NVMe log out of the driver.

    Regards,

    Michael Xing [MSFT]

    Thursday, February 12, 2015 12:32 AM
  • Hi HJ,

    StorNVMe.sys supports the admin commands internally. On win8.1, the miniport driver doesn't allow NVMe pass-though commands thus you cannot get NVMe log out of the driver.

    Regards,

    Michael Xing [MSFT]

    Thanks, Michael!

    Is there any other walk around to get NVMe log out of the driver?

    I found an old thread (below) that you mentioned SCSI pass through IOCTL commands, could you give me some more detailed information on how to do it?

    https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/8882bd78-b12e-43e3-a892-92a044ce4882/how-should-we-manage-the-nvme-devices-in-ws2012r2-?forum=wdk#f741642d-ec39-4fc2-a99c-e38bde20e7f9

    Thanks a lot!

    HJ

    Tuesday, February 17, 2015 4:01 PM