From: Hannes Reinecke <hare@suse.de>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Christoph Hellwig <hch@lst.de>,
James Bottomley <james.bottomley@hansenpartnership.com>,
linux-scsi@vger.kernel.org,
Sreekanth Reddy <sreekanth.reddy@broadcom.com>,
Kashyap Desai <kashyap.desai@broadcom.com>,
Sathya Prakash <sathya.prakash@broadcom.com>,
Hannes Reinecke <hare@suse.de>
Subject: [PATCHv4 00/12] mpt3sas: lockless command submission
Date: Wed, 22 Feb 2017 11:31:40 +0100 [thread overview]
Message-ID: <1487759512-3873-1-git-send-email-hare@suse.de> (raw)
Hi all,
this is the first part of my patchset to enable scsi multiqueue for the
mpt3sas driver.
While the HBA only has a single mailbox register for submitting commands,
it does have individual receive queues per MSI-X interrupt and as such
does benefit from converting it to full multiqueue support.
On request from Broadcom the patchset has been split in two parts, one
to enable lockless command submission and a secondary one for exposing
all hardware queues to the OS.
As usual, comments and reviews are welcome.
Changes to v1:
- Include reviews from Christoph
- Use reserved commands for ioctl passthrough commands
- Include reviews from Sreekanth
Changes to v2:
- Rework ioctl code to not use blk_mq_busy_iter
- Open-code mpt3sas_scsi_direct_io_(get,set)
Changes to v3:
- Simplify task management code
- Simplify _wait_for_commands_to_complete
- Use first reserved smid for ioctl passthrough
Hannes Reinecke (12):
mpt3sas: switch to pci_alloc_irq_vectors
mpt3sas: set default value for cb_idx
mpt3sas: use 'list_splice_init()'
mpt3sas: separate out _base_recovery_check()
mpt3sas: open-code _scsih_scsi_lookup_get()
mpt3sas: Introduce mpt3sas_get_st_from_smid()
mpt3sas: check command status before attempting abort
mpt3sas: always use first reserved smid for ioctl passthrough
mpt3sas: simplify task management functions
mpt3sas: simplify mpt3sas_scsi_issue_tm()
mpt3sas: simplify _wait_for_commands_to_complete()
mpt3sas: lockless command submission
drivers/scsi/mpt3sas/mpt3sas_base.c | 277 ++++++++++++++---------------
drivers/scsi/mpt3sas/mpt3sas_base.h | 29 ++--
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 31 ++--
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 289 +++++++------------------------
drivers/scsi/mpt3sas/mpt3sas_warpdrive.c | 33 +---
5 files changed, 220 insertions(+), 439 deletions(-)
--
1.8.5.6
next reply other threads:[~2017-02-22 10:31 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-22 10:31 Hannes Reinecke [this message]
2017-02-22 10:31 ` [PATCHv4 01/12] mpt3sas: switch to pci_alloc_irq_vectors Hannes Reinecke
2017-02-23 22:04 ` Martin K. Petersen
2017-02-22 10:31 ` [PATCHv4 02/12] mpt3sas: set default value for cb_idx Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 03/12] mpt3sas: use 'list_splice_init()' Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 04/12] mpt3sas: separate out _base_recovery_check() Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 05/12] mpt3sas: open-code _scsih_scsi_lookup_get() Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 06/12] mpt3sas: Introduce mpt3sas_get_st_from_smid() Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 07/12] mpt3sas: check command status before attempting abort Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 08/12] mpt3sas: always use first reserved smid for ioctl passthrough Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 09/12] mpt3sas: simplify task management functions Hannes Reinecke
2017-03-06 5:16 ` Sreekanth Reddy
2017-03-13 15:15 ` Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 10/12] mpt3sas: simplify mpt3sas_scsi_issue_tm() Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 11/12] mpt3sas: simplify _wait_for_commands_to_complete() Hannes Reinecke
2017-03-03 11:57 ` Sreekanth Reddy
2017-03-03 13:53 ` Hannes Reinecke
2017-02-22 10:31 ` [PATCHv4 12/12] mpt3sas: lockless command submission Hannes Reinecke
2017-03-03 12:32 ` Sreekanth Reddy
2017-03-03 13:59 ` Hannes Reinecke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1487759512-3873-1-git-send-email-hare@suse.de \
--to=hare@suse.de \
--cc=hch@lst.de \
--cc=james.bottomley@hansenpartnership.com \
--cc=kashyap.desai@broadcom.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=sathya.prakash@broadcom.com \
--cc=sreekanth.reddy@broadcom.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox