1
0
Fork 0
alistair23-linux/drivers/nvme/host
James Smart d157e5343c nvme_fc: rework sqsize handling
Corrected four outstanding issues in the transport around sqsize.

1: Create Connection LS is sending the 1's-based sqsize, should be
sending the 0's-based value.

2: allocation of hw queue is using the 0's-base size. It should be
using the 1's-based value.

3: normalization of ctrl.sqsize by MQES is using MQES+1 (1's-based
value). It should be MQES (0's-based value).

4: Missing clause to ensure queue_count not larger than ctrl->sqsize.

Corrected by:
Clean up routines that pass queue size around. The queue size value is
the actual count (1's-based) value and determined from ctrl->sqsize + 1.

Routines that send 0's-based value adapt from queue size.

Sset ctrl->sqsize properly for MQES.

Added clause to nsure queue_count not larger than ctrl->sqsize + 1.

Signed-off-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Keith Busch <keith.busch@intel.com>
2018-03-08 10:39:58 -07:00
..
Kconfig nvme: implement multipath access to nvme subsystems 2017-11-10 19:53:25 -07:00
Makefile nvme: add tracepoint for nvme_setup_cmd 2018-01-26 12:34:40 +01:00
core.c Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" 2018-03-07 03:22:28 -07:00
fabrics.c nvme-fabrics: Ignore nr_io_queues option for discovery controllers 2018-03-08 09:19:17 -07:00
fabrics.h nvme: rename NVME_CTRL_RECONNECTING state to NVME_CTRL_CONNECTING 2018-02-08 18:35:53 +02:00
fc.c nvme_fc: rework sqsize handling 2018-03-08 10:39:58 -07:00
lightnvm.c lightnvm: make geometry structures 2.0 ready 2018-01-05 08:50:12 -07:00
multipath.c Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" 2018-03-07 03:22:28 -07:00
nvme.h Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" 2018-03-07 03:22:28 -07:00
pci.c nvme: pci: pass max vectors as num_possible_cpus() to pci_alloc_irq_vectors 2018-03-01 09:40:51 -07:00
rdma.c Merge branch 'for-jens' of git://git.infradead.org/nvme into for-linus 2018-02-28 12:18:58 -07:00
trace.c nvme: add tracepoint for nvme_setup_cmd 2018-01-26 12:34:40 +01:00
trace.h nvme: add tracepoint for nvme_complete_rq 2018-01-26 12:34:40 +01:00