All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/51] Remove the request pointer from struct scsi_cmnd
@ 2021-05-24  3:08 Bart Van Assche
  2021-05-24  3:08 ` [PATCH v3 01/51] core: Introduce the scsi_cmd_to_rq() function Bart Van Assche
                   ` (50 more replies)
  0 siblings, 51 replies; 55+ messages in thread
From: Bart Van Assche @ 2021-05-24  3:08 UTC (permalink / raw)
  To: Martin K . Petersen; +Cc: Christoph Hellwig, linux-scsi, Bart Van Assche

Hi Martin,

This patch series implements the following two changes for all SCSI drivers:
- Use blk_mq_rq_from_pdu() instead of the request member of struct scsi_cmnd
  since adding an offset to a pointer is faster than pointer indirection.
- Remove the request pointer from struct scsi_cmnd.

Please consider this patch series for kernel v5.14.

Thanks,

Bart.

Changes compared to v2:
- Added a patch for the aha1542 driver since a recent change introduced a
  scsi_cmnd.request dereference in that driver.
- In patch 2, renamed a local variable in a macro from 'rq' into '__rq'.  
- Added several more Acked-by tags.

Changes compared to v1:
- Renamed blk_req() into scsi_cmd_to_rq().
- Added several Acked-by tags.

Bart Van Assche (51):
  core: Introduce the scsi_cmd_to_rq() function
  core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  sd: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  sr: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  scsi_transport_fc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  scsi_transport_spi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ata: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  RDMA/iser: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  RDMA/srp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  zfcp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  53c700: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  NCR5380: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  aacraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  advansys: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  aha1542: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  bnx2i: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  csiostor: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  cxlflash: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  dpt_i2o: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  fnic: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  hisi_sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  hpsa: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ibmvfc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ibmvscsi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ips: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  libsas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  lpfc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  megaraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  mpt3sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  mvumi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  myrb: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  myrs: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ncr53c8xx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qedf: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qedi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qla1280: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qla2xxx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qla4xxx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  qlogicpti: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  scsi_debug: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  smartpqi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  snic: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  stex: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  sun3_scsi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  sym53c8xx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  ufs: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  virtio_scsi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  xen-scsifront: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  tcm_loop: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  usb-storage: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
  core: Remove the request member from struct scsi_cmnd

 drivers/ata/libata-eh.c                     |  5 +-
 drivers/ata/libata-scsi.c                   | 10 ++--
 drivers/ata/pata_falcon.c                   |  4 +-
 drivers/infiniband/ulp/iser/iser_memory.c   |  2 +-
 drivers/infiniband/ulp/srp/ib_srp.c         |  6 +-
 drivers/s390/scsi/zfcp_fsf.c                |  2 +-
 drivers/scsi/53c700.c                       |  2 +-
 drivers/scsi/NCR5380.c                      |  6 +-
 drivers/scsi/aacraid/aachba.c               |  2 +-
 drivers/scsi/aacraid/commsup.c              |  2 +-
 drivers/scsi/advansys.c                     |  4 +-
 drivers/scsi/aha1542.c                      |  6 +-
 drivers/scsi/bnx2i/bnx2i_hwi.c              |  2 +-
 drivers/scsi/csiostor/csio_scsi.c           |  6 +-
 drivers/scsi/cxlflash/main.c                |  2 +-
 drivers/scsi/dpt_i2o.c                      |  4 +-
 drivers/scsi/fnic/fnic_scsi.c               | 49 ++++++++--------
 drivers/scsi/hisi_sas/hisi_sas_main.c       |  4 +-
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c      |  2 +-
 drivers/scsi/hpsa.c                         |  6 +-
 drivers/scsi/ibmvscsi/ibmvfc.c              |  2 +-
 drivers/scsi/ibmvscsi/ibmvscsi.c            |  2 +-
 drivers/scsi/ips.c                          |  2 +-
 drivers/scsi/libsas/sas_ata.c               |  2 +-
 drivers/scsi/libsas/sas_scsi_host.c         |  2 +-
 drivers/scsi/lpfc/lpfc_scsi.c               | 63 ++++++++++-----------
 drivers/scsi/megaraid/megaraid_sas_base.c   |  4 +-
 drivers/scsi/megaraid/megaraid_sas_fusion.c | 10 ++--
 drivers/scsi/mpt3sas/mpt3sas_base.c         |  4 +-
 drivers/scsi/mpt3sas/mpt3sas_scsih.c        |  6 +-
 drivers/scsi/mvumi.c                        |  2 +-
 drivers/scsi/myrb.c                         | 11 ++--
 drivers/scsi/myrs.c                         | 11 ++--
 drivers/scsi/ncr53c8xx.c                    |  4 +-
 drivers/scsi/qedf/qedf_io.c                 |  8 +--
 drivers/scsi/qedi/qedi_fw.c                 |  9 +--
 drivers/scsi/qla1280.c                      |  6 +-
 drivers/scsi/qla2xxx/qla_os.c               |  4 +-
 drivers/scsi/qla4xxx/ql4_iocb.c             |  2 +-
 drivers/scsi/qla4xxx/ql4_os.c               |  4 +-
 drivers/scsi/qlogicpti.c                    |  2 +-
 drivers/scsi/scsi.c                         |  2 +-
 drivers/scsi/scsi_debug.c                   | 13 +++--
 drivers/scsi/scsi_error.c                   | 15 +++--
 drivers/scsi/scsi_lib.c                     | 29 +++++-----
 drivers/scsi/scsi_logging.c                 | 18 +++---
 drivers/scsi/scsi_transport_fc.c            |  2 +-
 drivers/scsi/scsi_transport_spi.c           |  2 +-
 drivers/scsi/sd.c                           | 33 +++++------
 drivers/scsi/sd_zbc.c                       | 10 ++--
 drivers/scsi/smartpqi/smartpqi_init.c       |  4 +-
 drivers/scsi/snic/snic_scsi.c               | 10 ++--
 drivers/scsi/sr.c                           | 13 ++---
 drivers/scsi/stex.c                         |  6 +-
 drivers/scsi/sun3_scsi.c                    |  2 +-
 drivers/scsi/sym53c8xx_2/sym_glue.c         |  4 +-
 drivers/scsi/ufs/ufshcd.c                   | 28 ++++-----
 drivers/scsi/virtio_scsi.c                  |  4 +-
 drivers/scsi/xen-scsifront.c                |  2 +-
 drivers/target/loopback/tcm_loop.c          |  4 +-
 drivers/usb/storage/transport.c             |  2 +-
 include/scsi/scsi_cmnd.h                    | 15 +++--
 include/scsi/scsi_device.h                  | 16 +++---
 63 files changed, 259 insertions(+), 261 deletions(-)


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

end of thread, other threads:[~2021-05-25 16:19 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-24  3:08 [PATCH v3 00/51] Remove the request pointer from struct scsi_cmnd Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 01/51] core: Introduce the scsi_cmd_to_rq() function Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 02/51] core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 03/51] sd: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 04/51] sr: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 05/51] scsi_transport_fc: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 06/51] scsi_transport_spi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 07/51] ata: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 08/51] RDMA/iser: " Bart Van Assche
2021-05-24  8:46   ` Max Gurtovoy
2021-05-24  3:08 ` [PATCH v3 09/51] RDMA/srp: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 10/51] zfcp: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 11/51] 53c700: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 12/51] NCR5380: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 13/51] aacraid: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 14/51] advansys: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 15/51] aha1542: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 16/51] bnx2i: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 17/51] csiostor: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 18/51] cxlflash: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 19/51] dpt_i2o: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 20/51] fnic: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 21/51] hisi_sas: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 22/51] hpsa: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 23/51] ibmvfc: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 24/51] ibmvscsi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 25/51] ips: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 26/51] libsas: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 27/51] lpfc: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 28/51] megaraid: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 29/51] mpt3sas: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 30/51] mvumi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 31/51] myrb: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 32/51] myrs: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 33/51] ncr53c8xx: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 34/51] qedf: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 35/51] qedi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 36/51] qla1280: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 37/51] qla2xxx: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 38/51] qla4xxx: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 39/51] qlogicpti: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 40/51] scsi_debug: " Bart Van Assche
2021-05-25 16:19   ` Douglas Gilbert
2021-05-24  3:08 ` [PATCH v3 41/51] smartpqi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 42/51] snic: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 43/51] stex: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 44/51] sun3_scsi: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 45/51] sym53c8xx: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 46/51] ufs: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 47/51] virtio_scsi: " Bart Van Assche
2021-05-24  9:23   ` Michael S. Tsirkin
2021-05-24  3:08 ` [PATCH v3 48/51] xen-scsifront: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 49/51] tcm_loop: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 50/51] usb-storage: " Bart Van Assche
2021-05-24  3:08 ` [PATCH v3 51/51] core: Remove the request member from struct scsi_cmnd 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.