• Suganath Prabu's avatar
    scsi: mpt3sas: Allow ioctls to blocked access status NVMe · 3c090ce3
    Suganath Prabu authored
    If driver sees the NVMe drive with "DEVICE_BLOCKED" AccessStatus in its
    PCIe Device Page0, then driver removes the drive from its internal list and
    does not allow any IOCTL commands to be sent to the drive and will return
    the IOCTLs with "-ENODEV" status.
    
    The driver will now allow NVMe Encapsulated IOCTL issued to the NVMe device
    with an access status of DEVICE_BLOCKED. This change allows the user to
    flash new drive firmware online and revive the drive.
    
    Add NVMe device only the driver's internal list even though the device is
    in the blocked state so that the device will be visible to Apps. This way
    Apps can send NVMe Encapsulated IOCTLs to this drive and bring the drive
    online. This NVMe drive with DEVICE_BLOCKED access status won't added to
    the SML, it will be added only in the driver's internal list.
    
    [mkp: clarified desc]
    Signed-off-by: default avatarSuganath Prabu <suganath-prabu.subramani@broadcom.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    3c090ce3
mpt3sas_scsih.c 319 KB