The set of core changes here is Christoph's submission path cleanups. These introduced a couple of regressions when first proposed so they got held over from the initial merge window pull request to give more testing time, which they've now had and Syzbot has confirmed the regression it detected is fixed. The other main changes are two driver updates (arcmsr, pm80xx) and assorted minor clean ups. The patch is available here: git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git scsi-misc The short changelog is: Christoph Hellwig (11): scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands scsi: sr: Initialize ->cmd_len scsi: core: Only start the request just before dispatching scsi: core: Remove scsi_setup_cmnd() and scsi_setup_fs_cmnd() scsi: core: Clean up allocation and freeing of sgtables scsi: core: Rename scsi_mq_prep_fn() to scsi_prepare_cmd() scsi: core: Rename scsi_prep_state_check() to scsi_device_state_check() scsi: core: Use rq_dma_dir in scsi_setup_cmnd() scsi: core: Move command size detection out of the fast path scsi: core: Remove scsi_init_cmd_errh scsi: core: Don't export scsi_device_from_queue() Christophe JAILLET (1): scsi: isci: Fix a typo in a comment Colin Ian King (2): scsi: qla2xxx: Fix return of uninitialized value in rval scsi: sym53c8xx_2: Fix sizeof() mismatch Daniel Wagner (1): scsi: qla2xxx: Do not consume srb greedily Jason Yan (1): scsi: gdth: Make option_setup() static Jing Xiangfeng (2): scsi: myrb: Remove redundant assignment to variable timeout scsi: bfa: Fix error return in bfad_pci_init() Julia Lawall (1): scsi: target: rd: Drop double zeroing Liu Shixin (4): scsi: snic: Simplify the return expression of svnic_cq_alloc() scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc() scsi: initio: Use module_pci_driver() to simplify the code scsi: dc395x: Use module_pci_driver() to simplify the code Pavel Machek (CIP) (1): scsi: qla2xxx: Use constant when it is known Qinglang Miao (2): scsi: fcoe: Simplify the return expression of fcoe_sysfs_setup() scsi: qla2xxx: Convert to DEFINE_SHOW_ATTRIBUTE Tom Rix (1): scsi: qla2xxx: Initialize variable in qla8044_poll_reg() Viswas G (4): scsi: pm80xx: Driver version update scsi: pm80xx: Increase the number of outstanding I/O supported to 1024 scsi: pm80xx: Remove DMA memory allocation for ccb and device structures scsi: pm80xx: Increase number of supported queues Ye Bin (2): scsi: qla4xxx: Fix inconsistent format argument type scsi: myrb: Fix inconsistent format argument types Zheng Yongjun (1): scsi: 53c700: Remove set but not used variable ching Huang (4): scsi: arcmsr: Update driver version to v1.50.00.02-20200819 scsi: arcmsr: Add support for ARC-1886 series RAID controllers scsi: arcmsr: Fix device hot-plug monitoring timer stop scsi: arcmsr: Remove unnecessary syntax And the diffstat: drivers/scsi/53c700.c | 4 - drivers/scsi/arcmsr/arcmsr.h | 102 ++++++++- drivers/scsi/arcmsr/arcmsr_hba.c | 377 ++++++++++++++++++++++++++-------- drivers/scsi/bfa/bfad.c | 1 + drivers/scsi/dc395x.c | 25 +-- drivers/scsi/fcoe/fcoe_sysfs.c | 8 +- drivers/scsi/fnic/vnic_wq_copy.c | 8 +- drivers/scsi/gdth.c | 151 +++++++------- drivers/scsi/initio.c | 14 +- drivers/scsi/isci/remote_node_table.h | 2 +- drivers/scsi/myrb.c | 5 +- drivers/scsi/pm8001/pm8001_ctl.c | 6 +- drivers/scsi/pm8001/pm8001_defs.h | 27 ++- drivers/scsi/pm8001/pm8001_hwi.c | 38 ++-- drivers/scsi/pm8001/pm8001_init.c | 221 +++++++++++++------- drivers/scsi/pm8001/pm8001_sas.h | 15 +- drivers/scsi/pm8001/pm80xx_hwi.c | 109 +++++----- drivers/scsi/qla2xxx/qla_dfs.c | 68 +----- drivers/scsi/qla2xxx/qla_isr.c | 42 ++-- drivers/scsi/qla2xxx/qla_nvme.c | 8 +- drivers/scsi/qla2xxx/qla_nx2.c | 2 +- drivers/scsi/qla4xxx/ql4_nx.c | 2 +- drivers/scsi/scsi_lib.c | 108 ++++------ drivers/scsi/sd.c | 27 +-- drivers/scsi/snic/vnic_cq.c | 8 +- drivers/scsi/sr.c | 17 +- drivers/scsi/sym53c8xx_2/sym_hipd.c | 2 +- drivers/target/target_core_rd.c | 2 +- include/scsi/scsi_cmnd.h | 3 +- 29 files changed, 818 insertions(+), 584 deletions(-) James