diff options
Diffstat (limited to 'usr/src/uts/common/io/nvme/nvme.c')
-rw-r--r-- | usr/src/uts/common/io/nvme/nvme.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/usr/src/uts/common/io/nvme/nvme.c b/usr/src/uts/common/io/nvme/nvme.c index 2aa87600f4..fe8e31c145 100644 --- a/usr/src/uts/common/io/nvme/nvme.c +++ b/usr/src/uts/common/io/nvme/nvme.c @@ -1536,6 +1536,15 @@ nvme_check_generic_cmd_status(nvme_cmd_t *cmd) bd_error(cmd->nc_xfer, BD_ERR_NTRDY); return (EIO); + case NVME_CQE_SC_GEN_NVM_FORMATTING: + /* Format in progress (1.2) */ + if (!NVME_VERSION_ATLEAST(&cmd->nc_nvme->n_version, 1, 2)) + return (nvme_check_unknown_cmd_status(cmd)); + atomic_inc_32(&cmd->nc_nvme->n_nvm_ns_formatting); + if (cmd->nc_xfer != NULL) + bd_error(cmd->nc_xfer, BD_ERR_NTRDY); + return (EIO); + default: return (nvme_check_unknown_cmd_status(cmd)); } |