mbox series

[PATCHv5,00/11] scsi: remove legacy cmd_list implementation

Message ID 20191120103114.24723-1-hare@suse.de (mailing list archive)
Headers show
Series scsi: remove legacy cmd_list implementation | expand

Message

Hannes Reinecke Nov. 20, 2019, 10:31 a.m. UTC
Hi all,

with the switch to blk-mq we have an efficient way of looking up
outstanding commands via blk_mq_rq_busy_iter().
In this patchset the dpt_i2o and aacraid drivers are switched over
to using that function, and the now obsolete cmd_list implemantation
in the SCSI midlayer is removed.

As usual, comments and reviews are welcome.

Changes to v1:
- Fixup kbuild warning

Changes to v2:
- Add scsi_host_busy_iter()
- Include reviews from Christoph

Changes to v3:
- Include reviews from Christoph
- Add midlayer helper to terminate outstanding commands
- Split off aacraid modifcations into several patches

Changes to v4:
- Include reviews from Bart
- Add new midlayer helper scsi_host_quiesce()/scsi_host_resume()
- Improve comments

Hannes Reinecke (11):
  dpt_i2o: rename adpt_i2o_to_scsi() to adpt_i2o_scsi_complete()
  scsi: add scsi_host_flush_commands() helper
  dpt_i2o: use scsi_host_flush_commands() to abort outstanding commands
  aacraid: Do not wait for outstanding write commands on
    synchronize_cache
  aacraid: use midlayer helper to terminate outstanding commands
  aacraid: replace aac_flush_ios() with midlayer helper
  scsi: add scsi_host_quiesce()/scsi_host_resume() helper
  aacraid: use scsi_host_quiesce() to wait for I/O to complete
  scsi: add scsi_host_busy_iter()
  aacraid: use scsi_host_busy_iter() in get_num_of_incomplete_fibs()
  scsi: Remove cmd_list functionality

 drivers/scsi/aacraid/aachba.c   |  76 +----------------------------
 drivers/scsi/aacraid/comminit.c |  35 +-------------
 drivers/scsi/aacraid/commsup.c  |  24 +--------
 drivers/scsi/aacraid/linit.c    | 105 ++++++++++++++++------------------------
 drivers/scsi/dpt_i2o.c          |  25 ++--------
 drivers/scsi/dpti.h             |   3 +-
 drivers/scsi/hosts.c            |  62 ++++++++++++++++++++++++
 drivers/scsi/scsi.c             |  14 ------
 drivers/scsi/scsi_error.c       |   1 -
 drivers/scsi/scsi_lib.c         |  49 +++++++------------
 drivers/scsi/scsi_priv.h        |   2 -
 drivers/scsi/scsi_scan.c        |   1 -
 include/scsi/scsi_cmnd.h        |   1 -
 include/scsi/scsi_device.h      |   3 +-
 include/scsi/scsi_host.h        |   8 ++-
 15 files changed, 141 insertions(+), 268 deletions(-)