diff options
author | Max Gurtovoy <mgurtovoy@nvidia.com> | 2021-03-30 23:01:20 +0000 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2021-04-02 18:48:29 +0200 |
commit | 8df1bff57c7e5fc7747b9236561079907d8cf82e (patch) | |
tree | 406fe692968c7c1a48354fe52c0f0f025cf22239 /drivers/nvme | |
parent | 73ffcefcfca047e5c13a3f81d2cf22eff18732c1 (diff) |
nvme-fc: check sgl supported by target
SGLs support is mandatory for NVMe/FC, make sure that the target is
aligned to the specification.
Signed-off-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/nvme')
-rw-r--r-- | drivers/nvme/host/fc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/nvme/host/fc.c b/drivers/nvme/host/fc.c index f54ffb792acc..921b3315c2f1 100644 --- a/drivers/nvme/host/fc.c +++ b/drivers/nvme/host/fc.c @@ -3099,6 +3099,11 @@ nvme_fc_create_association(struct nvme_fc_ctrl *ctrl) } /* FC-NVME supports normal SGL Data Block Descriptors */ + if (!(ctrl->ctrl.sgls & ((1 << 0) | (1 << 1)))) { + dev_err(ctrl->ctrl.device, + "Mandatory sgls are not supported!\n"); + goto out_disconnect_admin_queue; + } if (opts->queue_size > ctrl->ctrl.maxcmd) { /* warn if maxcmd is lower than queue_size */ |