Opened 4 days ago

Closed 4 days ago

#1958 closed enhancement (duplicate)

Read NVMe Identify Controller failed with VMD (RST) mapped NVMe

Reported by: dillon4d Owned by:
Priority: minor Milestone:
Component: all Version:
Keywords: nvme windows Cc:

Description (last modified by Christian Franke)

Unable to read/retrieve data on VMD-mapped NVMe SSD with smartctl.exe -a command.

Read NVMe Identify Controller failed: IOCTL_STORAGE_QUERY_PROPERTY(NVMe) failed, Error=1

My system has 4 NVMe SSDs connected and 1 is mapped under VMD. The VMD-mapped device fails to read/retrieve any data from smarctl.exe -a. Is this a known issue or limitation?

Logs:

C:\Program Files\smartmontools\bin>smartctl --scan
/dev/sda -d nvme # /dev/sda, NVMe device => VMD-mapped NVMe
/dev/sdb -d nvme # /dev/sdb, NVMe device
/dev/sdc -d nvme # /dev/sdc, NVMe device
/dev/sdd -d nvme # /dev/sdd, NVMe device


C:\Program Files\smartmontools\bin>smartctl -a /dev/sda
smartctl 7.5 2025-04-30 r5714 [x86_64-w64-mingw32-w11-24H2] (AppVeyor)
Copyright (C) 2002-25, Bruce Allen, Christian Franke, www.smartmontools.org

Read NVMe Identify Controller failed: IOCTL_STORAGE_QUERY_PROPERTY(NVMe) failed, Error=1


C:\Program Files\smartmontools\bin>smartctl -r ioctl,2 --scan
 \\.\PhysicalDrive0: successfully opened
  IOCTL_STORAGE_QUERY_PROPERTY returns:
    Vendor:   "NVMe"
    Product:  "SAMSUNG MZVL2512HDJD-00B07"
    Revision: "GXD7102Q"
    Removable: No
    BusType:   0x11
 \\.\PhysicalDrive1: successfully opened
  IOCTL_STORAGE_QUERY_PROPERTY returns:
    Vendor:   "(null)"
    Product:  "SAMSUNG MZVL2512HDJD-00B07"
    Revision: "GXD7102Q"
    Removable: No
    BusType:   0x11
 \\.\PhysicalDrive2: successfully opened
  IOCTL_STORAGE_QUERY_PROPERTY returns:
    Vendor:   "(null)"
    Product:  "SAMSUNG MZVLC4T0HBL1-00B07"
    Revision: "NXH7002Q"
    Removable: No
    BusType:   0x11
 \\.\PhysicalDrive3: successfully opened
  IOCTL_STORAGE_QUERY_PROPERTY returns:
    Vendor:   "(null)"
    Product:  "SAMSUNG MZVL2512HDJD-00B07"
    Revision: "GXD7102Q"
    Removable: No
    BusType:   0x11
 \\.\Scsi0:: successfully opened
  IOCTL_SCSI_MINIPORT(CC_CSMI_1) succeeded, bytes returned: 204
CSMI_SAS_DRIVER_INFO:
  Name:        "iaStorVD"
  Description: "Intel(R) Rapid Storage Technology "
  Revision:    20.2
  IOCTL_SCSI_MINIPORT(CC_CSMI_20) succeeded, bytes returned: 2080
  IOCTL_SCSI_MINIPORT(CC_CSMI_10) succeeded, bytes returned: 128
CSMI_SAS_RAID_INFO:
  NumRaidSets:  1
  MaxDrvPerSet: 4
  MaxRaidSets:  0
  MaxRaidTypes: 0
  MaxPhyDrives: 0
CSMI_SAS_PHY_INFO: NumberOfPhys=4
Phy[0] Port:   4
  Type:        0x10, 0x00
  InitProto:   0x01, 0x00
  TargetProto: 0x00, 0x01
  PortIdent:   0x04
  PhyIdent:    0x3c, 0x00
  SignalClass: 0x00, 0x00
  Restricted:  0x00, 0x00
  SASAddress:  00 00 00 00 00 00 00 00, 00 04 07 00 00 00 00 00
Phy[1] Port:   5
  Type:        0x10, 0x00
  InitProto:   0x01, 0x00
  TargetProto: 0x00, 0x01
  PortIdent:   0x05
  PhyIdent:    0x3d, 0x00
  SignalClass: 0x00, 0x00
  Restricted:  0x00, 0x00
  SASAddress:  00 00 00 00 00 00 00 00, 00 05 07 00 00 00 00 00
Phy[2] Port:   6
  Type:        0x10, 0x00
  InitProto:   0x01, 0x00
  TargetProto: 0x00, 0x01
  PortIdent:   0x06
  PhyIdent:    0x3e, 0x00
  SignalClass: 0x00, 0x00
  Restricted:  0x00, 0x00
  SASAddress:  00 00 00 00 00 00 00 00, 00 06 07 00 00 00 00 00
Phy[3] Port:   7
  Type:        0x10, 0x00
  InitProto:   0x01, 0x00
  TargetProto: 0x00, 0x01
  PortIdent:   0x07
  PhyIdent:    0x3f, 0x00
  SignalClass: 0x00, 0x00
  Restricted:  0x00, 0x00
  SASAddress:  00 00 00 00 00 00 00 00, 00 07 07 00 00 00 00 00
 \\.\Scsi1:: successfully opened
  IOCTL_SCSI_MINIPORT(CC_CSMI_1) failed, Error=1
 \\.\Scsi2:: successfully opened
  IOCTL_SCSI_MINIPORT(CC_CSMI_1) failed, Error=1
 \\.\Scsi3:: successfully opened
  IOCTL_SCSI_MINIPORT(CC_CSMI_1) failed, Error=1
  \\.\Scsi0:: successfully opened
  nvme probe failed: NVME_PASS_THROUGH failed, Error=1117
  \\.\Scsi1:: successfully opened
  nvme probe failed: NVME_PASS_THROUGH failed, Error=1
  \\.\Scsi2:: successfully opened
  nvme probe failed: NVME_PASS_THROUGH failed, Error=1
  \\.\Scsi3:: successfully opened
  nvme probe failed: NVME_PASS_THROUGH failed, Error=1
  \\.\Scsi4:: Open failed, Error=2
  \\.\Scsi5:: Open failed, Error=2
  \\.\Scsi6:: Open failed, Error=2
  \\.\Scsi7:: Open failed, Error=2
  \\.\Scsi8:: Open failed, Error=2
  \\.\Scsi9:: Open failed, Error=2
  \\.\Scsi10:: Open failed, Error=2
  \\.\Scsi11:: Open failed, Error=2
  \\.\Scsi12:: Open failed, Error=2
  \\.\Scsi13:: Open failed, Error=2
  \\.\Scsi14:: Open failed, Error=2
  \\.\Scsi15:: Open failed, Error=2
  \\.\Scsi16:: Open failed, Error=2
  \\.\Scsi17:: Open failed, Error=2
  \\.\Scsi18:: Open failed, Error=2
  \\.\Scsi19:: Open failed, Error=2
  \\.\Scsi20:: Open failed, Error=2
  \\.\Scsi21:: Open failed, Error=2
  \\.\Scsi22:: Open failed, Error=2
  \\.\Scsi23:: Open failed, Error=2
  \\.\Scsi24:: Open failed, Error=2
  \\.\Scsi25:: Open failed, Error=2
  \\.\Scsi26:: Open failed, Error=2
  \\.\Scsi27:: Open failed, Error=2
  \\.\Scsi28:: Open failed, Error=2
  \\.\Scsi29:: Open failed, Error=2
  \\.\Scsi30:: Open failed, Error=2
  \\.\Scsi31:: Open failed, Error=2
/dev/sda -d nvme # /dev/sda, NVMe device
/dev/sdb -d nvme # /dev/sdb, NVMe device
/dev/sdc -d nvme # /dev/sdc, NVMe device
/dev/sdd -d nvme # /dev/sdd, NVMe device

Change History (2)

comment:1 by Christian Franke, 4 days ago

Component: smartctlall
Description: modified (diff)
Keywords: nvme windows added; VMD RST removed
Type: defectenhancement

Is this a known issue or limitation?

Yes, the Intel RST/VMD drivers do not provide the NVMe pass-through functionality as specified by Microsoft. It requires undocumented vendor specific calls which are not yet implemented in smartmontools.

Pull requests are welcome: ​https://github.com/smartmontools/smartmontools/pulls

comment:2 by Christian Franke, 4 days ago

Resolution: duplicate
Status: newclosed

See ticket #1223.

Note: See TracTickets for help on using tickets.