WSL2-Linux-Kernel/drivers/scsi
Tong Zhang 4db09593af scsi: myrs: Fix crash in error case
In myrs_detect(), cs->disable_intr is NULL when privdata->hw_init() fails
with non-zero. In this case, myrs_cleanup(cs) will call a NULL ptr and
crash the kernel.

[    1.105606] myrs 0000:00:03.0: Unknown Initialization Error 5A
[    1.105872] myrs 0000:00:03.0: Failed to initialize Controller
[    1.106082] BUG: kernel NULL pointer dereference, address: 0000000000000000
[    1.110774] Call Trace:
[    1.110950]  myrs_cleanup+0xe4/0x150 [myrs]
[    1.111135]  myrs_probe.cold+0x91/0x56a [myrs]
[    1.111302]  ? DAC960_GEM_intr_handler+0x1f0/0x1f0 [myrs]
[    1.111500]  local_pci_probe+0x48/0x90

Link: https://lore.kernel.org/r/20220123225717.1069538-1-ztong0001@gmail.com
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Tong Zhang <ztong0001@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2022-01-25 00:09:41 -05:00
..
aacraid scsi: aacraid: Fix spelling of "its" 2022-01-05 00:23:47 -05:00
aic7xxx scsi: aic79xx: Remove redundant error variable 2022-01-05 00:55:38 -05:00
aic94xx treewide: Replace open-coded flex arrays in unions 2021-10-18 12:28:53 -07:00
arcmsr scsi: arcmsr: Switch to attribute groups 2021-10-16 21:45:54 -04:00
arm scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
be2iscsi scsi: be2iscsi: Switch to attribute groups 2021-10-16 21:45:54 -04:00
bfa scsi: bfa: Remove useless DMA-32 fallback configuration 2022-01-24 23:30:29 -05:00
bnx2fc scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put() 2022-01-24 23:30:28 -05:00
bnx2i scsi: bnx2i: Switch to attribute groups 2021-10-16 21:45:55 -04:00
csiostor scsi: csiostor: Switch to attribute groups 2021-10-16 21:45:55 -04:00
cxgbi
cxlflash scsi: cxlflash: Switch to attribute groups 2021-10-16 21:45:55 -04:00
device_handler
dpt
elx scsi: elx: efct: Don't use GFP_KERNEL under spin lock 2022-01-24 23:30:23 -05:00
esas2r scsi: esas2r: Call scsi_done() directly 2021-10-16 21:28:46 -04:00
fcoe scsi: fcoe: Use netif_is_bond_master() instead of open code 2021-10-18 22:38:34 -04:00
fnic scsi: fnic: Switch to attribute groups 2021-10-16 21:45:55 -04:00
hisi_sas scsi: hisi_sas: Remove useless DMA-32 fallback configuration 2022-01-24 23:30:29 -05:00
ibmvscsi SCSI misc on 20211105 2021-11-05 08:42:02 -07:00
ibmvscsi_tgt scsi: target: ibm_vscsi: Replace enable attr with ops.enable 2021-10-04 23:27:38 -04:00
isci scsi: isci: Switch to attribute groups 2021-10-16 21:45:56 -04:00
libfc scsi: libfc: Call scsi_done() directly 2021-10-16 21:28:48 -04:00
libsas scsi: libsas: Keep host active while processing events 2021-12-22 23:38:31 -05:00
lpfc bitmap patches for 5.17-rc1 2022-01-23 06:20:44 +02:00
megaraid SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
mpi3mr scsi: mpi3mr: Fix formatting problems in some kernel-doc comments 2022-01-05 00:34:41 -05:00
mpt3sas SCSI misc on 20220121 2022-01-22 10:24:02 +02:00
mvsas scsi: mvsas: Add spin_lock/unlock() to protect asd_sas_port->phy_list 2021-12-22 23:38:29 -05:00
pcmcia scsi: nsp_cs: Check of ioremap return value 2022-01-10 11:03:42 -05:00
pm8001 scsi: pm8001: Fix bogus FW crash for maxcpus=1 2022-01-24 23:30:27 -05:00
qedf scsi: qedf: Change context reset messages to ratelimited 2022-01-24 23:30:26 -05:00
qedi Merge branch '5.16/scsi-fixes' into 5.17/scsi-staging 2021-12-16 22:38:19 -05:00
qla2xxx scsi: qla2xxx: Synchronize rport dev_loss_tmo setting 2021-12-16 22:48:33 -05:00
qla4xxx scsi: qla4xxx: Format SYSFS_FLAG_FW_SEL_BOOT as byte 2021-12-06 22:17:19 -05:00
smartpqi scsi: smartpqi: Switch to attribute groups 2021-10-16 21:45:59 -04:00
snic scsi: snic: Don't use GFP_DMA in snic_queue_report_tgt_req() 2021-12-22 23:43:23 -05:00
sym53c8xx_2 scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
ufs scsi: ufs: Treat link loss as fatal error 2022-01-25 00:07:24 -05:00
.gitignore
3w-9xxx.c scsi: 3w-9xxx: Switch to attribute groups 2021-10-16 21:45:53 -04:00
3w-9xxx.h
3w-sas.c scsi: 3w-sas: Remove useless DMA-32 fallback configuration 2022-01-24 23:30:28 -05:00
3w-sas.h
3w-xxxx.c scsi: 3w-xxx: Remove redundant initialization of variable retval 2021-10-18 22:38:34 -04:00
3w-xxxx.h
53c700.c scsi: 53c700: Remove redundant assignment to pointer SCp 2022-01-25 00:08:18 -05:00
53c700.h
53c700.scr
53c700_d.h_shipped
BusLogic.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
BusLogic.h
FlashPoint.c
Kconfig
Makefile scsi: core: Fix missing FORCE for scsi_devinfo_tbl.c build rule 2021-08-23 23:07:05 -04:00
NCR5380.c scsi: NCR5380: Call scsi_done() directly 2021-10-16 21:28:44 -04:00
NCR5380.h
a100u2w.c scsi: a100u2w: Fix a kernel-doc warning 2021-11-29 23:02:13 -05:00
a100u2w.h
a2091.c
a2091.h
a3000.c
a3000.h
a4000t.c
advansys.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
aha152x.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
aha152x.h
aha1542.c scsi: aha1542: Use memcpy_{from,to}_bvec() 2021-10-19 14:07:19 -04:00
aha1542.h
aha1740.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
aha1740.h
am53c974.c
atari_scsi.c
atp870u.c scsi: atp870u: Fix a kernel-doc warning 2021-11-29 23:02:13 -05:00
atp870u.h
bvme6000_scsi.c
ch.c SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
constants.c
dc395x.c scsi: dc395x: Fix a kernel-doc warning 2021-11-29 23:02:14 -05:00
dc395x.h
dmx3191d.c
dpt_i2o.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
dpti.h
esp_scsi.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
esp_scsi.h
fdomain.c scsi: fdomain: Call scsi_done() directly 2021-10-16 21:28:47 -04:00
fdomain.h
fdomain_isa.c
fdomain_pci.c
g_NCR5380.c
gvp11.c
gvp11.h
hosts.c scsi: core: Remove Scsi_Host.shost_dev_attr_groups 2021-11-18 22:26:58 -05:00
hpsa.c scsi: hpsa: Remove an unused variable in hpsa_update_scsi_devices() 2021-12-13 23:34:01 -05:00
hpsa.h
hpsa_cmd.h
hptiop.c scsi: hptiop: Switch to attribute groups 2021-10-16 21:45:55 -04:00
hptiop.h
imm.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
imm.h
initio.c scsi: initio: Don't use GFP_DMA in initio_probe_one() 2021-12-22 23:41:53 -05:00
initio.h
ipr.c scsi: ipr: Switch to attribute groups 2021-10-16 21:45:56 -04:00
ipr.h
ips.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
ips.h
iscsi_boot_sysfs.c
iscsi_tcp.c
iscsi_tcp.h
jazz_esp.c
lasi700.c parisc: Make struct parisc_driver::remove() return void 2021-08-30 10:18:25 +02:00
libiscsi.c scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown() 2021-12-22 23:03:59 -05:00
libiscsi_tcp.c
mac53c94.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
mac53c94.h
mac_esp.c
mac_scsi.c
megaraid.c scsi: megaraid: Avoid mismatched storage type sizes 2022-01-07 09:19:51 -05:00
megaraid.h
mesh.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
mesh.h
mvme16x_scsi.c
mvme147.c
mvme147.h
mvumi.c scsi: mvumi: Call scsi_done() directly 2021-10-16 21:29:15 -04:00
mvumi.h
myrb.c scsi: myrb: Don't use GFP_DMA in myrb_pdev_slave_alloc() 2021-12-22 23:42:23 -05:00
myrb.h
myrs.c scsi: myrs: Fix crash in error case 2022-01-25 00:09:41 -05:00
myrs.h
ncr53c8xx.c scsi: ncr53c8xx: Switch to attribute groups 2021-10-16 21:45:57 -04:00
ncr53c8xx.h
nsp32.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
nsp32.h
nsp32_debug.c
nsp32_io.h
pmcraid.c scsi: pmcraid: Don't use GFP_DMA in pmcraid_alloc_sglist() 2021-12-22 23:44:12 -05:00
pmcraid.h
ppa.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
ppa.h
ps3rom.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
qla1280.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
qla1280.h
qlogicfas.c
qlogicfas408.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
qlogicfas408.h
qlogicpti.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
qlogicpti.h
raid_class.c
script_asm.pl
scsi.c scsi: core: Fix scsi_device_max_queue_depth() 2021-12-06 22:30:32 -05:00
scsi.h
scsi_bsg.c block: remove the gendisk argument to blk_execute_rq 2021-11-29 06:41:29 -07:00
scsi_common.c
scsi_debug.c scsi: scsi_debug: Fix buffer size of REPORT ZONES command 2021-12-06 22:04:35 -05:00
scsi_debugfs.c scsi: core: Show SCMD_LAST in text form 2021-11-29 23:02:13 -05:00
scsi_debugfs.h
scsi_devinfo.c
scsi_dh.c
scsi_error.c SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
scsi_ioctl.c scsi: remove the gendisk argument to scsi_ioctl 2021-11-29 06:41:29 -07:00
scsi_lib.c SCSI misc on 20220121 2022-01-22 10:24:02 +02:00
scsi_lib_dma.c
scsi_logging.c block: remove the ->rq_disk field in struct request 2021-11-29 06:41:29 -07:00
scsi_logging.h
scsi_netlink.c
scsi_pm.c scsi: block: pm: Always set request queue runtime active in blk_post_runtime_resume() 2021-12-22 23:38:29 -05:00
scsi_priv.h scsi: Remove superfluous #include <linux/async.h> directives 2021-11-29 23:02:15 -05:00
scsi_proc.c proc: remove PDE_DATA() completely 2022-01-22 08:33:37 +02:00
scsi_sas_internal.h
scsi_scan.c scsi: core: Declare 'scsi_scan_type' static 2021-11-29 23:02:13 -05:00
scsi_sysctl.c
scsi_sysfs.c Merge branch '5.16/scsi-fixes' into 5.17/scsi-staging 2021-12-16 22:38:19 -05:00
scsi_trace.c
scsi_transport_api.h
scsi_transport_fc.c
scsi_transport_iscsi.c scsi: iscsi: Unblock session then wake up error handler 2021-11-16 19:42:30 -05:00
scsi_transport_sas.c scsi: scsi_transport_sas: Add 22.5 Gbps link rate definitions 2021-10-19 14:07:19 -04:00
scsi_transport_spi.c
scsi_transport_srp.c
scsicam.c
sd.c SCSI misc on 20220121 2022-01-22 10:24:02 +02:00
sd.h scsi: sd: add concurrent positioning ranges support 2021-10-26 21:01:48 -06:00
sd_dif.c block: move integrity handling out of <linux/blkdev.h> 2021-10-18 06:17:02 -06:00
sd_zbc.c SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
sense_codes.h
ses.c scsi: ses: Fix unsigned comparison with less than zero 2021-09-28 22:42:06 -04:00
sg.c scsi/sg: move sg-big-buff sysctl to scsi/sg.c 2022-01-22 08:33:35 +02:00
sgiwd93.c
sim710.c
sni_53c710.c
sr.c SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
sr.h
sr_ioctl.c scsi: sr: Fix spelling mistake "does'nt" -> "doesn't" 2021-09-13 22:15:49 -04:00
sr_vendor.c scsi: sr: Don't use GFP_DMA 2021-12-22 23:41:13 -05:00
st.c scsi: remove the gendisk argument to scsi_ioctl 2021-11-29 06:41:29 -07:00
st.h
st_options.h
stex.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
storvsc_drv.c scsi: storvsc: Fix storvsc_queuecommand() memory leak 2022-01-10 12:33:47 +00:00
sun3_scsi.c
sun3_scsi_vme.c
sun3x_esp.c
sun_esp.c
virtio_scsi.c virtio,vdpa,qemu_fw_cfg: features, cleanups, fixes 2022-01-18 10:05:48 +02:00
vmw_pvscsi.c scsi: vmw_pvscsi: Set residual data length conditionally 2021-12-22 23:17:27 -05:00
vmw_pvscsi.h
wd33c93.c scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions 2021-10-16 21:32:16 -04:00
wd33c93.h
wd719x.c scsi: wd719x: Call scsi_done() directly 2021-10-16 21:31:43 -04:00
wd719x.h
xen-scsifront.c scsi: xen-scsifront: Call scsi_done() directly 2021-10-16 21:31:43 -04:00
zalon.c parisc: Make struct parisc_driver::remove() return void 2021-08-30 10:18:25 +02:00
zorro7xx.c
zorro_esp.c