[PATCH 0/5] ibmvfc: MQ preparatory locking work

From: Tyrel Datwyler
Date: Fri Dec 18 2020 - 18:23:36 EST


The ibmvfc driver in its current form relies heavily on the host_lock. This
patchset introduces a genric queue with its own queue lock and sent/free event
list locks. This generic queue allows the driver to decouple the primary queue
and future subordinate queues from the host lock reducing lock contention while
also relaxing locking for submissions and completions to simply the list lock of
the queue in question.

Tyrel Datwyler (5):
ibmvfc: define generic queue structure for CRQs
ibmvfc: make command event pool queue specific
ibmvfc: define per-queue state/list locks
ibmvfc: complete commands outside the host/queue lock
ibmvfc: relax locking around ibmvfc_queuecommand

drivers/scsi/ibmvscsi/ibmvfc.c | 379 ++++++++++++++++++++++-----------
drivers/scsi/ibmvscsi/ibmvfc.h | 54 +++--
2 files changed, 286 insertions(+), 147 deletions(-)

--
2.27.0