linux/drivers/scsi
Xiaofei Tan 571295f805 scsi: hisi_sas: complete all tasklets prior to host reset
The CQ event is handled in tasklet context, and it could be delayed if
the system loading is high.

It is possible to run into some problems when executing a host reset
when cq_tasklet_vx_hw() is being executed.

So, prior to host reset, execute tasklet_kill() to ensure that all CQ
tasklets are complete.

Besides, as the function hisi_sas_wait_tasklets_done() is added to do
tasklet_kill(), this patch refactors some code where tasklet_kill() is
used.

Signed-off-by: Xiaofei Tan <tanxiaofei@huawei.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-10-31 12:28:01 -04:00
..
aacraid Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
aic7xxx scsi: aic7xxx: make a couple of functions static 2017-10-16 22:40:18 -04:00
aic94xx scsi: libsas: kill useless ha_event and do some cleanup 2017-09-15 21:32:58 -04:00
arcmsr arcmsr: add const to bin_attribute structures 2017-08-10 19:40:50 -04:00
arm scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
be2iscsi scsi: be2iscsi: Update driver version 2017-10-11 14:18:30 -04:00
bfa scsi: bfa: don't reset max_segments for every bsg request 2017-10-16 23:36:23 -04:00
bnx2fc Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
bnx2i scsi: bnx2i: Clean up unused pointers in bnx2i_hwi 2017-09-15 15:40:29 -04:00
csiostor scsi: csiostor: enable PCIe relaxed ordering if supported 2017-09-25 15:33:26 -04:00
cxgbi scsi: libcxgbi: simplify task->hdr allocation for mgmt cmds 2017-10-11 14:26:49 -04:00
cxlflash scsi: cxlflash: Fix vlun resize failure in the shrink path 2017-08-25 18:24:04 -04:00
device_handler scsi: scsi_dh: Return SCSI_DH_XX error code from ->attach() 2017-09-25 19:03:14 -04:00
dpt sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
esas2r scsi: esas2r: constify pci_device_id. 2017-08-24 22:28:52 -04:00
fcoe scsi: fcoe: open-code fcoe_destroy_work() for NETDEV_UNREGISTER 2017-09-15 15:44:49 -04:00
fnic scsi: fnic: do not call host reset from command abort 2017-08-25 17:21:10 -04:00
hisi_sas scsi: hisi_sas: complete all tasklets prior to host reset 2017-10-31 12:28:01 -04:00
ibmvscsi scsi: ibmvfc: ibmvscsi: ibmvscsi_tgt: constify vio_device_id 2017-08-25 17:42:42 -04:00
ibmvscsi_tgt scsi: ibmvfc: ibmvscsi: ibmvscsi_tgt: constify vio_device_id 2017-08-25 17:42:42 -04:00
isci scsi: libsas: move bus_reset_handler() to target_reset_handler() 2017-08-25 17:21:10 -04:00
libfc scsi: libfc: don't assign resid_len in fc_lport_bsg_request 2017-10-16 23:36:23 -04:00
libsas scsi: libsas: add event to defer list tail instead of head when draining 2017-09-15 21:38:30 -04:00
lpfc scsi: lpfc: Fix a precedence bug in lpfc_nvme_io_cmd_wqe_cmpl() 2017-10-16 22:43:54 -04:00
megaraid scsi: megaraid_sas: driver version upgrade 2017-10-25 04:55:32 -04:00
mpt3sas scsi: mpt3sas: Bump mpt3sas driver version to v16.100.00.00 2017-10-11 14:08:07 -04:00
mvsas scsi: libsas: move bus_reset_handler() to target_reset_handler() 2017-08-25 17:21:10 -04:00
osd blk-map: call blk_queue_bounce from blk_rq_append_bio 2017-06-27 12:13:21 -06:00
pcmcia scsi: qlogicfas: move bus_reset to host_reset 2017-08-25 17:21:11 -04:00
pm8001 scsi: pm80xx: corrected linkrate value. 2017-10-18 20:55:45 -04:00
qedf Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
qedi scsi: qedi: Delete redundant variables 2017-10-16 23:25:14 -04:00
qla2xxx scsi: qla2xxx: don't break the bsg-lib abstractions 2017-10-16 23:46:21 -04:00
qla4xxx scsi: qla4xxx: fix spelling mistake: "Tempalate" -> "Template" 2017-04-26 18:34:34 -04:00
smartpqi scsi: smartpqi: update driver version to 1.1.2-126 2017-10-02 22:46:26 -04:00
snic scsi: snic: fix a couple of spelling mistakes/typos 2017-07-01 17:13:56 -04:00
sym53c8xx_2 drivers/scsi/sym53c8xx_2/sym_hipd.c: convert to use memset32 2017-09-08 18:26:48 -07:00
ufs scsi: ufs: Remove unused UFS_BIT() macro 2017-10-11 13:44:31 -04:00
.gitignore scsi: scsi_devinfo: Add scsi_devinfo_tbl.c 2017-10-25 05:40:22 -04:00
3w-9xxx.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
3w-9xxx.h scsi: Update 3ware driver email addresses 2016-12-14 15:25:12 -05:00
3w-sas.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
3w-sas.h scsi: Update 3ware driver email addresses 2016-12-14 15:25:12 -05:00
3w-xxxx.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
3w-xxxx.h scsi: Update 3ware driver email addresses 2016-12-14 15:25:12 -05:00
53c700_d.h_shipped
53c700.c scsi: 53c700: move bus reset to host reset 2017-08-25 17:21:11 -04:00
53c700.h scsi: remove current_cmnd field from struct scsi_device 2016-07-13 22:33:23 -04:00
53c700.scr
a100u2w.c
a100u2w.h
a2091.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
a2091.h
a3000.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
a3000.h
a4000t.c
advansys.c scsi: advansys: fix uninitialized data access 2017-04-04 19:39:39 -04:00
aha152x.c scsi: aha152x: drop host reset 2017-08-25 17:21:11 -04:00
aha152x.h
aha1542.c scsi: aha1542: constify pnp_device_id 2017-08-24 22:29:07 -04:00
aha1542.h
aha1740.c
aha1740.h
am53c974.c
atari_scsi.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
atp870u.c
atp870u.h
BusLogic.c scsi: BusLogic: fix incorrect spelling of adatper_reset_req 2017-04-21 10:31:33 -04:00
BusLogic.h scsi: BusLogic: fix incorrect spelling of adatper_reset_req 2017-04-21 10:31:33 -04:00
bvme6000_scsi.c
ch.c scsi: ch: add refcounting 2017-08-24 22:29:06 -04:00
constants.c scsi: fix upper bounds check of sense key in scsi_sense_key_string() 2016-08-16 00:49:32 -04:00
dc395x.c
dc395x.h
dmx3191d.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
dpt_i2o.c scsi: dpt_i2o: remove redundant null check on array device 2017-08-10 19:55:35 -04:00
dpti.h
eata_generic.h
eata_pio.c eata_pio: missing break statement 2016-05-10 22:01:07 -04:00
eata_pio.h
eata.c scsi: eata: remove 'arg_done' from eata2x_eh_host_reset() 2017-08-25 17:21:12 -04:00
esp_scsi.c scsi: esp_scsi: Always clear msg_out_len after MESSAGE OUT phase 2017-08-10 19:55:35 -04:00
esp_scsi.h scsi: esp_scsi: Clean up control flow and dead code 2017-08-10 19:55:34 -04:00
fdomain.c scsi: fdomain: move bus reset to host reset 2017-08-25 17:21:10 -04:00
fdomain.h scsi: fdomain: move bus reset to host reset 2017-08-25 17:21:10 -04:00
FlashPoint.c
g_NCR5380.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
gdth_ioctl.h
gdth_proc.c scsi: gdth: increase the procfs event buffer size 2017-08-07 14:04:02 -04:00
gdth_proc.h
gdth.c scsi: gdth: avoid buffer overflow warning 2017-08-07 14:04:01 -04:00
gdth.h
gvp11.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
gvp11.h
hosts.c scsi: Remove Scsi_Host.uspace_req_q 2017-09-05 08:18:42 -04:00
hpsa_cmd.h scsi: hpsa: update discovery polling 2017-10-25 04:55:18 -04:00
hpsa.c scsi: hpsa: bump driver version 2017-10-25 04:55:22 -04:00
hpsa.h scsi: hpsa: add support for legacy boards 2017-08-24 22:28:55 -04:00
hptiop.c scsi: hptiop: Simplify reset handling 2017-08-25 17:21:10 -04:00
hptiop.h
imm.c scsi: imm: drop duplicate bus_reset handler 2017-08-25 17:21:11 -04:00
imm.h
initio.c
initio.h
ipr.c scsi: ipr: Set no_report_opcodes for RAID arrays 2017-08-22 22:23:36 -04:00
ipr.h scsi: ipr: Fix scsi-mq lockdep issue 2017-08-08 11:49:51 -04:00
ips.c sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
ips.h sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
iscsi_boot_sysfs.c ibft: Expose iBFT acpi header via sysfs 2016-05-16 11:14:29 -04:00
iscsi_tcp.c scsi: iscsi_tcp: Remove a set-but-not-used variable 2017-08-25 17:08:08 -04:00
iscsi_tcp.h
jazz_esp.c
Kconfig SCSI misc on 20170913 2017-09-13 10:47:14 -07:00
lasi700.c parisc/scsi/lasi700: Fix section mismatches 2017-08-22 16:34:36 +02:00
libiscsi_tcp.c
libiscsi.c scsi: libiscsi: Fix indentation 2017-08-25 17:08:08 -04:00
mac53c94.c scsi: Convert to using %pOF instead of full_name 2017-08-07 14:04:02 -04:00
mac53c94.h
mac_esp.c scsi: mac_esp: Fix PIO transfers for MESSAGE IN phase 2017-08-10 19:55:34 -04:00
mac_scsi.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
Makefile scsi: scsi: Export blacklist flags to sysfs 2017-10-17 00:57:12 -04:00
megaraid.c scsi: megaraid: fix format-overflow warning 2017-08-07 14:04:01 -04:00
megaraid.h
mesh.c
mesh.h
mvme16x_scsi.c
mvme147.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
mvme147.h
mvumi.c scsi: mvumi: remove code handling zero scsi_sg_count(scmd) case 2017-04-24 18:16:49 -04:00
mvumi.h
ncr53c8xx.c
ncr53c8xx.h
NCR53c406a.c
NCR5380.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
NCR5380.h scsi: ncr5380: Clean up dead code and redundant macro usage 2017-01-31 21:37:44 -05:00
NCR_D700.c
NCR_D700.h
NCR_Q720.c dma-coherent: remove the DMA_MEMORY_MAP and DMA_MEMORY_IO flags 2017-09-01 11:59:17 +02:00
NCR_Q720.h
nsp32_debug.c
nsp32_io.h
nsp32.c scsi: nsp32: fix logic bug in error handling 2017-10-16 22:38:44 -04:00
nsp32.h
osst_detect.h
osst_options.h
osst.c scsi: osst: silence underflow warning in osst_verify_frame() 2017-08-24 22:29:01 -04:00
osst.h
pmcraid.c scsi: pmcraid: fix duplicated code for different branches 2017-08-24 22:29:05 -04:00
pmcraid.h scsi: pmcraid: Replace PCI pool old API 2017-08-07 14:04:01 -04:00
ppa.c scsi: ppa: drop duplicate bus_reset handler 2017-08-25 17:21:11 -04:00
ppa.h
ps3rom.c
qla1280.c ia64, scsi: update references for the device-io book 2017-05-16 08:44:21 -03:00
qla1280.h
qlogicfas408.c scsi: qlogicfas: move bus_reset to host_reset 2017-08-25 17:21:11 -04:00
qlogicfas408.h scsi: qlogicfas: move bus_reset to host_reset 2017-08-25 17:21:11 -04:00
qlogicfas.c scsi: qlogicfas: move bus_reset to host_reset 2017-08-25 17:21:11 -04:00
qlogicpti.c scsi: qlogicpti: fixup qlogicpti_reset() definition 2017-08-28 22:15:46 -04:00
qlogicpti.h qlogicpti: Fix compiler warnings 2016-11-28 15:51:31 -05:00
raid_class.c
script_asm.pl
scsi_common.c scsi: always zero sshdr in scsi_normalize_sense 2017-02-22 19:33:00 -05:00
scsi_debug.c scsi: scsi_debug: allow to specify inquiry vendor and model 2017-10-17 00:57:12 -04:00
scsi_debugfs.c scsi: Show .retries and .jiffies_at_alloc in debugfs 2017-08-31 23:09:11 -04:00
scsi_debugfs.h scsi: Implement blk_mq_ops.show_rq() 2017-04-26 15:09:04 -06:00
scsi_devinfo.c scsi: scsi_devinfo: Add REPORTLUN2 to EMC SYMMETRIX blacklist entry 2017-10-18 20:55:39 -04:00
scsi_dh.c scsi: scsi_dh: suppress errors from unsupported devices 2017-09-25 19:03:22 -04:00
scsi_error.c scsi: scsi_error: Handle power-on reset unit attention 2017-10-18 20:55:40 -04:00
scsi_ioctl.c scsi: Suppress gcc 7 fall-through warnings reported with W=1 2017-08-25 17:08:07 -04:00
scsi_lib_dma.c
scsi_lib.c scsi: scsi_error: Handle power-on reset unit attention 2017-10-18 20:55:40 -04:00
scsi_logging.c
scsi_logging.h scsi: update description of logging_level bits 2017-10-11 14:22:22 -04:00
scsi_module.c
scsi_netlink.c netlink: extended ACK reporting 2017-04-13 13:58:20 -04:00
scsi_pm.c
scsi_priv.h scsi: scsi_dh: suppress errors from unsupported devices 2017-09-25 19:03:22 -04:00
scsi_proc.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
scsi_sas_internal.h scsi_transport_sas: add 'scsi_target_id' sysfs attribute 2016-03-14 21:05:04 -04:00
scsi_scan.c scsi: scsi: Export blacklist flags to sysfs 2017-10-17 00:57:12 -04:00
scsi_sysctl.c
scsi_sysfs.c scsi: scsi: Export blacklist flags to sysfs 2017-10-17 00:57:12 -04:00
scsi_trace.c scsi-trace: define ZBC_IN and ZBC_OUT 2016-04-11 16:57:09 -04:00
scsi_transport_api.h
scsi_transport_fc.c scsi: bsg-lib: pass the release callback through bsg_setup_queue 2017-08-29 21:51:43 -04:00
scsi_transport_iscsi.c scsi: bsg-lib: pass the release callback through bsg_setup_queue 2017-08-29 21:51:43 -04:00
scsi_transport_sas.c scsi: scsi_transport_sas: check reply payload length instead of bidi request 2017-10-16 23:40:51 -04:00
scsi_transport_spi.c scsi: merge __scsi_execute into scsi_execute 2017-02-23 16:57:19 -05:00
scsi_transport_srp.c scsi: scsi_transport_srp: Suppress a W=1 compiler warning 2017-08-25 17:08:08 -04:00
scsi_typedefs.h
scsi.c Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
scsi.h
scsicam.c scsi: fix some kernel-doc markups 2017-05-16 08:44:15 -03:00
sd_dif.c scsi: sd: Move DIF protection types to t10-pi.h 2016-09-15 09:51:14 -04:00
sd_zbc.c scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics() 2017-10-16 23:54:33 -04:00
sd.c scsi: sd: change manage_start_stop to bool in sysfs interface 2017-10-17 01:26:25 -04:00
sd.h sd: add support for TCG OPAL self encrypting disks 2017-06-29 10:21:15 -04:00
sense_codes.h scsi: move Additional Sense Codes to separate file 2016-04-11 16:57:09 -04:00
ses.c Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
sg.c Merge branch 'fixes' into misc 2017-09-07 12:12:43 -07:00
sgiwd93.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
sim710.c
sni_53c710.c scsi: remove incorrect __exit markups 2017-03-15 19:27:46 -04:00
sr_ioctl.c scsi: merge __scsi_execute into scsi_execute 2017-02-23 16:57:19 -05:00
sr_vendor.c
sr.c scsi: sd: sr: Convert two assignments into warning statements 2017-08-25 17:08:08 -04:00
sr.h
st_options.h
st.c scsi: st: fix blk_get_queue usage 2017-08-08 11:49:51 -04:00
st.h
stex.c scsi: stex: make S6flag static 2017-04-26 18:32:29 -04:00
storvsc_drv.c scsi: storvsc: fix memory leak on ring buffer busy 2017-08-30 21:53:13 -04:00
sun3_scsi_vme.c
sun3_scsi.c scsi: NCR5380: Move bus reset to host reset 2017-08-25 17:21:11 -04:00
sun3x_esp.c
sun_esp.c scsi: sun_esp: fix device reference leaks 2017-06-27 21:46:55 -04:00
sym53c416.c
sym53c416.h
virtio_scsi.c scsi: virtio: virtio_scsi: Set can_queue to the length of the virtqueue. 2017-08-24 22:28:51 -04:00
vmw_pvscsi.c scsi: vmw_pvscsi: handle the return value from pci_alloc_irq_vectors correctly 2017-03-06 22:27:33 -05:00
vmw_pvscsi.h scsi: vmw_pvscsi: switch to pci_alloc_irq_vectors 2017-01-11 22:31:03 -05:00
wd33c93.c scsi: drop bus reset for wd33c93-compatible boards 2017-08-25 17:21:10 -04:00
wd33c93.h
wd719x.c drivers/scsi/wd719x.c: remove last declaration using DEFINE_PCI_DEVICE_TABLE 2016-09-01 17:52:01 -07:00
wd719x.h
xen-scsifront.c scsi: xen-scsifront: Remove code that zeroes driver-private command data 2017-06-12 21:02:04 -04:00
zalon.c parisc/scsi/zalon: Fix section mismatches 2017-08-22 16:34:36 +02:00
zorro7xx.c