]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
scsi: lpfc: Expand WQE capability of every NVME hardware queue
authorJames Smart <jsmart2021@gmail.com>
Tue, 21 Nov 2017 00:00:29 +0000 (16:00 -0800)
committerSeth Forshee <seth.forshee@canonical.com>
Fri, 16 Mar 2018 12:05:22 +0000 (07:05 -0500)
commit7fdcdd24564b7bb4a5750748b02f2658e3715d72
treec1127c216fb7abd2547acfc635dbe010a3efa97c
parent5fcdb4ab715b7aba83ef4acf77813f9141c96037
scsi: lpfc: Expand WQE capability of every NVME hardware queue

BugLink: http://bugs.launchpad.net/bugs/1752182
Hardware queues are a fast staging area to push commands into the
adapter.  The adapter should drain them extremely quickly. However,
under heavy io load, the host cpu is pushing commands faster than the
drain rate of the adapter causing the driver to resource busy commands.

Enlarge the hardware queue (wq & cq) to support a larger number of queue
entries (4x the prior size) before backpressure. Enlarging the queue
requires larger contiguous buffers (16k) per logical page for the
hardware. This changed calling sequences that were expecting 4K page
sizes that now must pass a parameter with the page sizes. It also
required use of a new version of an adapter command that can vary the
page size values.

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
(cherry picked from commit 81b96eda5ff8077873072facd20b9d85a80c61bd)
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/scsi/lpfc/lpfc_hw4.h
drivers/scsi/lpfc/lpfc_init.c
drivers/scsi/lpfc/lpfc_nvme.h
drivers/scsi/lpfc/lpfc_sli.c
drivers/scsi/lpfc/lpfc_sli4.h