All of lore.kernel.org
 help / color / mirror / Atom feed
* split scsi passthrough fields out of struct request
@ 2017-01-23 15:29 Christoph Hellwig
  2017-01-23 15:29 ` [PATCH 01/16] block: fix elevator init check Christoph Hellwig
                   ` (17 more replies)
  0 siblings, 18 replies; 66+ messages in thread
From: Christoph Hellwig @ 2017-01-23 15:29 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Mike Snitzer, linux-block, linux-scsi, dm-devel

Hi all,

this series splits the support for SCSI passthrough commands from the
main struct request used all over the block layer into a separate
scsi_request structure that drivers that want to support SCSI passthough
need to embedded as the first thing into their request-private data,
similar to how we handle NVMe passthrough commands.

To support this I've added support for that the private data after
request structure to the legacy request path instead, so that it can
be treated the same way as the blk-mq path.  Compare to the current
scsi_cmnd allocator that actually is a major simplification.

Compared to the previous RFC version the major change is that dm-mpath
works with this version.  To make it work I've switched the legacy
request dm-rq to use the same clone and map method as the blk-mq version.

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

end of thread, other threads:[~2017-01-26 19:42 UTC | newest]

Thread overview: 66+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-23 15:29 split scsi passthrough fields out of struct request Christoph Hellwig
2017-01-23 15:29 ` [PATCH 01/16] block: fix elevator init check Christoph Hellwig
2017-01-24  7:02   ` Hannes Reinecke
2017-01-24  7:02     ` Hannes Reinecke
2017-01-24 15:06   ` Jens Axboe
2017-01-24 15:06     ` Jens Axboe
2017-01-24 15:10     ` Christoph Hellwig
2017-01-23 15:29 ` [PATCH 02/16] block: simplify blk_init_allocated_queue Christoph Hellwig
2017-01-24  7:37   ` Hannes Reinecke
2017-01-24  7:37     ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 03/16] block: allow specifying size for extra command data Christoph Hellwig
2017-01-24  8:10   ` Hannes Reinecke
2017-01-24  8:10     ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 04/16] dm: remove incomple BLOCK_PC support Christoph Hellwig
2017-01-24  8:22   ` Hannes Reinecke
2017-01-24  8:22     ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 05/16] dm: always defer request allocation to the owner of the request_queue Christoph Hellwig
2017-01-24  8:29   ` Hannes Reinecke
2017-01-24  8:29     ` Hannes Reinecke
2017-01-24 10:05   ` Mike Snitzer
2017-01-24 14:20     ` Christoph Hellwig
2017-01-24 16:39       ` Mike Snitzer
2017-01-24 19:52         ` Christoph Hellwig
2017-01-26  4:23         ` Junichi Nomura
2017-01-26  4:23           ` Junichi Nomura
2017-01-23 15:29 ` [PATCH 06/16] scsi_dh_rdac: switch to scsi_execute_req_flags() Christoph Hellwig
2017-01-23 15:29 ` [PATCH 07/16] scsi_dh_emc: " Christoph Hellwig
2017-01-23 15:29 ` [PATCH 08/16] scsi_dh_hp_sw: " Christoph Hellwig
2017-01-23 15:29 ` [PATCH 09/16] scsi: remove gfp_flags member in scsi_host_cmd_pool Christoph Hellwig
2017-01-24  8:31   ` Hannes Reinecke
2017-01-24 12:08   ` Johannes Thumshirn
2017-01-24 12:08     ` Johannes Thumshirn
2017-01-23 15:29 ` [PATCH 10/16] scsi: respect unchecked_isa_dma for blk-mq Christoph Hellwig
2017-01-24 11:06   ` Hannes Reinecke
2017-01-24 11:06     ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 11/16] scsi: remove scsi_cmd_dma_pool Christoph Hellwig
2017-01-24 11:07   ` Hannes Reinecke
2017-01-24 11:07     ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 12/16] scsi: remove __scsi_alloc_queue Christoph Hellwig
2017-01-24 11:08   ` Hannes Reinecke
2017-01-24 11:08     ` Hannes Reinecke
2017-01-24 11:24   ` Johannes Thumshirn
2017-01-24 11:24     ` Johannes Thumshirn
2017-01-23 15:29 ` [PATCH 13/16] scsi: allocate scsi_cmnd structures as part of struct request Christoph Hellwig
2017-01-24 12:57   ` Hannes Reinecke
2017-01-23 15:29 ` [PATCH 14/16] block/bsg: move queue creation into bsg_setup_queue Christoph Hellwig
2017-01-23 15:29 ` [PATCH 15/16] block: split scsi_request out of struct request Christoph Hellwig
2017-01-24  0:33   ` Bart Van Assche
2017-01-24  0:33     ` Bart Van Assche
2017-01-24  8:09     ` hch
2017-01-24 16:31       ` Bart Van Assche
2017-01-24 16:31         ` Bart Van Assche
2017-01-24 13:21   ` Hannes Reinecke
2017-01-24 13:21     ` Hannes Reinecke
2017-01-26 19:12   ` Bart Van Assche
2017-01-26 19:12     ` Bart Van Assche
2017-01-26 19:37     ` Christoph Hellwig
2017-01-26 19:37       ` Christoph Hellwig
2017-01-26 19:42       ` Jens Axboe
2017-01-26 19:42         ` Jens Axboe
2017-01-23 15:29 ` [PATCH 16/16] block: don't assign cmd_flags in __blk_rq_prep_clone Christoph Hellwig
2017-01-24 13:22   ` Hannes Reinecke
2017-01-24 13:22     ` Hannes Reinecke
2017-01-23 15:39 ` split scsi passthrough fields out of struct request Jens Axboe
2017-01-23 15:46   ` Christoph Hellwig
2017-01-24  0:30 ` Bart Van Assche

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.