All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/52] Remove the request pointer from struct scsi_cmnd
@ 2021-08-05 19:17 Bart Van Assche
  2021-08-05 19:17 ` [PATCH v4 01/52] core: Introduce the scsi_cmd_to_rq() function Bart Van Assche
                   ` (52 more replies)
  0 siblings, 53 replies; 62+ messages in thread
From: Bart Van Assche @ 2021-08-05 19:17 UTC (permalink / raw)
  To: Martin K . Petersen; +Cc: 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 several more Acked-by tags.
- Rebased this patch series.

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 (52):
  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
  mpi3mr: 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               | 51 ++++++++-------
 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               | 71 ++++++++++-----------
 drivers/scsi/megaraid/megaraid_sas_base.c   |  4 +-
 drivers/scsi/megaraid/megaraid_sas_fusion.c | 10 +--
 drivers/scsi/mpi3mr/mpi3mr_os.c             |  8 +--
 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                      |  5 +-
 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                   | 16 ++---
 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                   | 11 ++--
 drivers/scsi/ufs/ufshpb.c                   | 19 +++---
 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                    | 17 +++--
 include/scsi/scsi_device.h                  | 16 +++--
 65 files changed, 269 insertions(+), 273 deletions(-)


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

end of thread, other threads:[~2021-08-08  1:01 UTC | newest]

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

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.