linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC v4 0/8] blk-mq/scsi: Provide hostwide shared tags for SCSI HBAs
@ 2019-11-26 13:10 Hannes Reinecke
  2019-11-26 13:10 ` [PATCH 1/8] blk-mq: Remove some unused function arguments Hannes Reinecke
                   ` (7 more replies)
  0 siblings, 8 replies; 15+ messages in thread
From: Hannes Reinecke @ 2019-11-26 13:10 UTC (permalink / raw)
  To: Martin K. Petersen
  Cc: Christoph Hellwig, James Bottomley, Ming Lei, Bart van Assche,
	John Garry, linux-scsi, linux-block, Hannes Reinecke

Hi all,

here now is an updated version of the v2 patchset from John Garry,
including the suggestions and reviews from the mailing list.
John, apologies for hijacking your work :-)

The main diffence is that I've changed the bitmaps to be allocated
separately in all cases, and just set the pointer to the shared bitmap
for the hostwide tags case.
I've also modified smartpqi and hpsa to take advantage of host_tags.

I did audit the iterators, and I _think_ they do the correct thing even
in the shared bitmap case. But then I might have overlooked things,
so feedback and reviews are welcome.

The one thing I'm not happy with is the debugfs interface; for shared
bitmaps all will be displaying essentially the same information, which
could be moved to a top-level directory. But that would change the
layout and I'm not sure if that buys us anything.

Differences to v3:
- Include reviews from Ming Lei

Differences to v2:
- Drop embedded tag bitmaps
- Do not share scheduling tags
- Add patches for hpsa and smartpqi

Differences to v1:
- Use a shared sbitmap, and not a separate shared tags (a big change!)
	- Drop request.shared_tag
- Add RB tags

Hannes Reinecke (4):
  blk-mq: Use a pointer for sbitmap
  scsi: Add template flag 'host_tagset'
  smartpqi: enable host tagset
  hpsa: switch to using blk-mq

John Garry (3):
  blk-mq: Remove some unused function arguments
  blk-mq: Facilitate a shared sbitmap per tagset
  scsi: hisi_sas: Switch v3 hw to MQ

Ming Lei (1):
  blk-mq: rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED

 block/bfq-iosched.c                    |   4 +-
 block/blk-mq-debugfs.c                 |  10 +--
 block/blk-mq-sched.c                   |   7 +-
 block/blk-mq-tag.c                     | 119 +++++++++++++++++++++++----------
 block/blk-mq-tag.h                     |  25 ++++---
 block/blk-mq.c                         | 102 ++++++++++++++++++----------
 block/blk-mq.h                         |  12 +++-
 block/kyber-iosched.c                  |   4 +-
 drivers/scsi/hisi_sas/hisi_sas.h       |   3 +-
 drivers/scsi/hisi_sas/hisi_sas_main.c  |  36 +++++-----
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c |  86 ++++++++++--------------
 drivers/scsi/hpsa.c                    |  44 ++----------
 drivers/scsi/hpsa.h                    |   1 -
 drivers/scsi/scsi_lib.c                |   2 +
 drivers/scsi/smartpqi/smartpqi_init.c  |  38 ++++++++---
 include/linux/blk-mq.h                 |   6 +-
 include/scsi/scsi_host.h               |   3 +
 17 files changed, 289 insertions(+), 213 deletions(-)

-- 
2.16.4


^ permalink raw reply	[flat|nested] 15+ messages in thread
* [PATCH RFC v3 0/8] blk-mq/scsi: Provide hostwide shared tags for SCSI HBAs
@ 2019-11-26  9:14 Hannes Reinecke
  2019-11-26  9:14 ` [PATCH 7/8] smartpqi: enable host tagset Hannes Reinecke
  0 siblings, 1 reply; 15+ messages in thread
From: Hannes Reinecke @ 2019-11-26  9:14 UTC (permalink / raw)
  To: Martin K. Petersen
  Cc: Christoph Hellwig, James Bottomley, Ming Lei, Bart van Assche,
	John Garry, linux-scsi, linux-block, Hannes Reinecke

Hi all,

here now is an updated version of the v2 patchset from John Garry,
including the suggestions and reviews from the mailing list.
John, apologies for hijacking your work :-)

The main diffence is that I've changed the bitmaps to be allocated
separately in all cases, and just set the pointer to the shared bitmap
for the hostwide tags case.
I've also modified smartpqi and hpsa to take advantage of host_tags.

I did audit the iterators, and I _think_ they do the correct thing even
in the shared bitmap case. But then I might have overlooked things,
so feedback and reviews are welcome.

The one thing I'm not happy with is the debugfs interface; for shared
bitmaps all will be displaying essentially the same information, which
could be moved to a top-level directory. But that would change the
layout and I'm not sure if that buys us anything.

Differences to v2:
- Drop embedded tag bitmaps
- Do not share scheduling tags
- Add patches for hpsa and smartpqi

Differences to v1:
- Use a shared sbitmap, and not a separate shared tags (a big change!)
	- Drop request.shared_tag
- Add RB tags

Hannes Reinecke (4):
  blk-mq: Use a pointer for sbitmap
  scsi: Add template flag 'host_tagset'
  smartpqi: enable host tagset
  hpsa: switch to using blk-mq

John Garry (3):
  blk-mq: Remove some unused function arguments
  blk-mq: Facilitate a shared sbitmap per tagset
  scsi: hisi_sas: Switch v3 hw to MQ

Ming Lei (1):
  blk-mq: rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED

 block/bfq-iosched.c                    |   4 +-
 block/blk-mq-debugfs.c                 |  10 ++--
 block/blk-mq-sched.c                   |   8 ++-
 block/blk-mq-tag.c                     | 104 ++++++++++++++++++++++-----------
 block/blk-mq-tag.h                     |  18 +++---
 block/blk-mq.c                         |  80 ++++++++++++++++---------
 block/blk-mq.h                         |   9 ++-
 block/kyber-iosched.c                  |   4 +-
 drivers/scsi/hisi_sas/hisi_sas.h       |   3 +-
 drivers/scsi/hisi_sas/hisi_sas_main.c  |  36 ++++++------
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c |  86 +++++++++++----------------
 drivers/scsi/hpsa.c                    |  44 +++-----------
 drivers/scsi/hpsa.h                    |   1 -
 drivers/scsi/scsi_lib.c                |   2 +
 drivers/scsi/smartpqi/smartpqi_init.c  |  38 ++++++++----
 include/linux/blk-mq.h                 |   9 ++-
 include/scsi/scsi_host.h               |   3 +
 17 files changed, 260 insertions(+), 199 deletions(-)

-- 
2.16.4


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2019-11-27 17:03 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-26 13:10 [PATCH RFC v4 0/8] blk-mq/scsi: Provide hostwide shared tags for SCSI HBAs Hannes Reinecke
2019-11-26 13:10 ` [PATCH 1/8] blk-mq: Remove some unused function arguments Hannes Reinecke
2019-11-26 13:10 ` [PATCH 2/8] blk-mq: rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED Hannes Reinecke
2019-11-26 13:10 ` [PATCH 3/8] blk-mq: Use a pointer for sbitmap Hannes Reinecke
2019-11-26 16:42   ` Christoph Hellwig
2019-11-26 13:10 ` [PATCH 4/8] blk-mq: Facilitate a shared sbitmap per tagset Hannes Reinecke
2019-11-26 13:59   ` John Garry
2019-11-26 14:10     ` Hannes Reinecke
2019-11-27 17:03   ` Bart Van Assche
2019-11-26 13:10 ` [PATCH 5/8] scsi: Add template flag 'host_tagset' Hannes Reinecke
2019-11-26 13:10 ` [PATCH 6/8] scsi: hisi_sas: Switch v3 hw to MQ Hannes Reinecke
2019-11-26 13:10 ` [PATCH 7/8] smartpqi: enable host tagset Hannes Reinecke
2019-11-26 13:10 ` [PATCH 8/8] hpsa: switch to using blk-mq Hannes Reinecke
2019-11-26 16:43   ` Christoph Hellwig
  -- strict thread matches above, loose matches on Subject: below --
2019-11-26  9:14 [PATCH RFC v3 0/8] blk-mq/scsi: Provide hostwide shared tags for SCSI HBAs Hannes Reinecke
2019-11-26  9:14 ` [PATCH 7/8] smartpqi: enable host tagset Hannes Reinecke

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).