linux-stable/drivers/scsi
Douglas Gilbert fc13638ae9 scsi: scsi_debug: Implement tur_ms_to_ready parameter
The current driver responds to TEST UNIT READY (TUR) with a GOOD status
immediately after a scsi_debug device (LU) is created. This is unrealistic
as even SSDs take some time after power-on before accepting media access
commands.

Add the tur_ms_to_ready parameter whose unit is milliseconds (default 0)
and is the period before which a TUR (or any media access command) will set
the CHECK CONDITION status with a sense key of NOT READY and an additional
sense of "Logical unit is in process of becoming ready".  The period starts
when each scsi_debug device is created.

This patch was prompted by T10 proposal 20-061r2 which was accepted on
2020716. It adds that a TUR in the situation described in the previous
paragraph may set the INFO field (or descriptor) in the sense data to the
estimated number in milliseconds before a subsequent TUR will yield a GOOD
status. This patch follows that advice.

Link: https://lore.kernel.org/r/20200724155531.668144-1-dgilbert@interlog.com
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Douglas Gilbert <dgilbert@interlog.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2020-07-29 00:03:52 -04:00
..
aacraid scsi: aacraid: Add descriptions for missing parameters 2020-07-24 22:09:58 -04:00
aic7xxx scsi: aic7xxx: Remove set but unused variables 'targ_info' and 'value' 2020-07-24 22:09:59 -04:00
aic94xx scsi: aic94xx: Fix kerneldoc formatting issue with 'task' 2020-07-24 22:09:58 -04:00
arcmsr scsi: arcmsr: arcmsr_hba: Remove statement with no effect 2020-07-24 22:09:57 -04:00
arm scsi: eesox: Fix different dev_id between request_irq() and free_irq() 2020-07-02 23:53:44 -04:00
be2iscsi scsi: be2iscsi: Correct misdocumentation of function param 'ep' 2020-07-24 22:32:10 -04:00
bfa scsi: bfa: Ensure a blank line precedes next function/header 2020-07-24 22:33:06 -04:00
bnx2fc scsi: bnx2fc: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-15 16:01:58 -04:00
bnx2i scsi: bnx2i: Add parameter description and rename another 2020-07-24 22:33:07 -04:00
csiostor scsi: csiostor: Add missing description for csio_rnode_fwevt_handler()'s 'fwevt' param 2020-07-24 22:32:07 -04:00
cxgbi scsi: cxgb3i: Remove bad documentation and demote kerneldoc header 2020-07-24 22:10:48 -04:00
cxlflash scsi: cxlflash: Remove an unnecessary NULL check 2020-06-09 21:57:27 -04:00
device_handler
dpt scsi: docs: convert dpti.txt to ReST 2020-03-11 23:07:59 -04:00
esas2r scsi: esas2r: Demote a few non-conformant kerneldoc headers 2020-07-24 22:33:07 -04:00
fcoe scsi: fcoe: Use eth_zero_addr() to clear mac address 2020-07-24 22:09:56 -04:00
fnic scsi: fnic: Use eth_broadcast_addr() to assign broadcast address 2020-07-24 22:09:56 -04:00
hisi_sas scsi: hisi_sas: Remove one kerneldoc comment 2020-07-13 23:32:29 -04:00
ibmvscsi scsi: Fix trivial spelling 2020-06-15 23:28:04 -04:00
ibmvscsi_tgt scsi: ibmvscsi_tgt: remove set but not used variables 'iue' and 'sd' 2019-12-19 22:08:54 -05:00
isci scsi: isci: Remove redundant initialization of variable 'status' 2020-07-24 22:09:56 -04:00
libfc scsi: libfc: Provide missing and repair existing function documentation 2020-07-15 16:01:57 -04:00
libsas scsi: libsas: Remove redundant assignment to variable res 2020-07-24 22:09:56 -04:00
lpfc scsi: lpfc: Fix typo in comment for ULP 2020-07-28 23:49:57 -04:00
megaraid scsi: megaraid_sas: Clear affinity hint 2020-07-24 22:09:54 -04:00
mpt3sas scsi: mpt3sas: Fix kdoc comments format 2020-07-08 01:05:21 -04:00
mvsas scsi: mvsas: Move 'core_nr' inside #ifdef and remove unused variable 'res_flag' 2020-07-24 22:36:46 -04:00
pcmcia scsi: pcmcia: nsp_cs: Remove unused variable 'dummy' 2020-07-08 01:12:54 -04:00
pm8001 scsi: pm8001: Staticify 'pm80xx_pci_mem_copy' and 'mpi_set_phy_profile_req' 2020-07-24 22:10:00 -04:00
qedf scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-15 16:01:58 -04:00
qedi scsi: qedi: Staticify non-external function 'qedi_get_iscsi_error' 2020-07-24 22:33:05 -04:00
qla2xxx scsi: qla2xxx: Address a set of sparse warnings 2020-07-15 16:12:24 -04:00
qla4xxx scsi: qla4xxx: Rename function parameter descriptions 2020-07-24 22:32:02 -04:00
smartpqi treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
snic scsi: snic: Make snic_io_exch_ver_cmpl_handler() return void 2020-04-24 18:21:15 -04:00
sym53c8xx_2 scsi: sym53c8xx_2: Ensure variable has the same stipulations as code using it 2020-07-24 22:10:02 -04:00
ufs scsi: ufs-mediatek: Prevent LPM operation on undeclared VCC 2020-07-28 22:59:57 -04:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
3w-9xxx.c
3w-9xxx.h
3w-sas.c
3w-sas.h
3w-xxxx.c
3w-xxxx.h
53c700.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c
a100u2w.h
a2091.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
a2091.h
a3000.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
a3000.h
a4000t.c
advansys.c scsi: advansys: Replace zero-length array with flexible-array member 2020-02-18 00:39:54 -05:00
aha152x.c scsi: aha152x: Remove unused variable 'ret' 2020-07-08 01:12:53 -04:00
aha152x.h
aha1542.c
aha1542.h
aha1740.c scsi: aha1740: Fix an errro handling path in aha1740_probe() 2020-03-26 21:10:53 -04:00
aha1740.h
am53c974.c
atari_scsi.c
atp870u.c
atp870u.h
BusLogic.c scsi: BusLogic: Remove conversion to bool in blogic_inquiry() 2020-04-24 18:21:14 -04:00
BusLogic.h
bvme6000_scsi.c
ch.c scsi: ch: remove ch_mutex() 2020-02-24 14:54:25 -05:00
constants.c scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table 2020-04-01 22:03:04 -04:00
dc395x.c scsi: dc395x: remove dc395x_bios_param 2020-03-26 22:51:18 -04:00
dc395x.h
dmx3191d.c
dpt_i2o.c scsi: dpt_i2o: Remove superfluous memset() 2020-07-24 22:09:57 -04:00
dpti.h scsi: docs: convert dpti.txt to ReST 2020-03-11 23:07:59 -04:00
esp_scsi.c scsi: esp_scsi: Add support for FSC chip 2019-12-19 22:08:51 -05:00
esp_scsi.h scsi: esp_scsi: Add support for FSC chip 2019-12-19 22:08:51 -05:00
fdomain.c
fdomain.h scsi: fdomain: Mark 'fdomain_pm_ops' as __maybe_unused 2020-07-08 01:12:44 -04:00
fdomain_isa.c
fdomain_pci.c
FlashPoint.c
g_NCR5380.c scsi: docs: convert g_NCR5380.txt to ReST 2020-03-11 23:08:00 -04:00
gdth.c scsi: gdth: Make __gdth_execute static 2020-04-14 21:32:39 -04:00
gdth.h
gdth_ioctl.h
gdth_proc.c scsi: gdth: Use scnprintf() for avoiding potential buffer overflow 2020-03-17 13:36:10 -04:00
gdth_proc.h
gvp11.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
gvp11.h
hosts.c scsi: core: Register sysfs for SCSI workqueue 2020-07-02 23:17:05 -04:00
hpsa.c scsi: hpsa: Correct ctrl queue depth 2020-07-28 22:34:52 -04:00
hpsa.h scsi: hpsa: Increase queue depth for external LUNs 2020-07-24 22:09:53 -04:00
hpsa_cmd.h
hptiop.c
hptiop.h
imm.c scsi: imm: Remove superfluous breaks 2020-07-24 22:09:55 -04:00
imm.h
initio.c scsi: initio: make initio_state_7() static 2019-12-19 22:08:54 -05:00
initio.h
ipr.c scsi: ipr: Remove a bunch of set but checked variables 2020-07-15 17:25:16 -04:00
ipr.h scsi: ipr: Fix struct packed-not-aligned issues 2020-07-15 17:26:58 -04:00
ips.c scsi: ips: Convert strnlen() to memcpy() since result should not be NUL terminated 2020-07-24 22:32:00 -04:00
ips.h
iscsi_boot_sysfs.c scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj 2020-06-02 21:23:47 -04:00
iscsi_tcp.c scsi: iscsi: Don't destroy session if there are outstanding connections 2020-01-15 22:48:34 -05:00
iscsi_tcp.h
jazz_esp.c
Kconfig scsi: lpfc: Add dependency on CPU_FREQ 2020-07-24 22:09:55 -04:00
lasi700.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
libiscsi.c scsi: iscsi: Register sysfs for iscsi workqueue 2020-05-26 15:40:30 -04:00
libiscsi_tcp.c
mac53c94.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
mac53c94.h
mac_esp.c
mac_scsi.c
Makefile
megaraid.c scsi: megaraid: Remove set but unused variable 2020-07-08 01:03:23 -04:00
megaraid.h
mesh.c scsi: mesh: Fix panic after host or bus reset 2020-07-24 22:09:56 -04:00
mesh.h
mvme16x_scsi.c
mvme147.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
mvme147.h
mvumi.c
mvumi.h scsi: Replace zero-length array with flexible-array member 2020-03-11 23:07:56 -04:00
myrb.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
myrb.h scsi: mylex: Use the correct style for SPDX License Identifier 2020-01-02 21:57:44 -05:00
myrs.c scsi: myrs: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-15 17:26:59 -04:00
myrs.h scsi: mylex: Use the correct style for SPDX License Identifier 2020-01-02 21:57:44 -05:00
ncr53c8xx.c scsi: docs: convert ncr53c8xx.txt to ReST 2020-03-11 23:08:01 -04:00
ncr53c8xx.h
NCR5380.c
NCR5380.h
nsp32.c
nsp32.h
nsp32_debug.c
nsp32_io.h
pmcraid.c scsi: pmcraid: Replace dma_pool_malloc with dma_pool_zalloc 2020-04-24 18:21:15 -04:00
pmcraid.h scsi: Replace zero-length array with flexible-array member 2020-03-11 23:07:56 -04:00
ppa.c scsi: ppa: Remove superfluous breaks 2020-07-24 22:09:55 -04:00
ppa.h
ps3rom.c
qla1280.c scsi: qla1280: make qla1280_firmware_mutex and qla1280_fw_tbl static 2020-04-14 21:42:10 -04:00
qla1280.h scsi: qla1280: Fix dma firmware download, if dma address is 64bit 2020-01-15 23:09:11 -05:00
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
qlogicpti.h
raid_class.c
script_asm.pl
scsi.c scsi: core: Remove scsi_sdb_cache 2020-06-19 23:06:43 -04:00
scsi.h
scsi_common.c
scsi_debug.c scsi: scsi_debug: Implement tur_ms_to_ready parameter 2020-07-29 00:03:52 -04:00
scsi_debugfs.c
scsi_debugfs.h
scsi_devinfo.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
scsi_dh.c
scsi_error.c scsi: core: Fix incorrect usage of shost_for_each_device 2020-05-19 21:54:17 -04:00
scsi_ioctl.c scsi_ioctl.c: switch SCSI_IOCTL_GET_IDLUN to copy_to_user() 2020-04-25 18:06:39 -04:00
scsi_lib.c scsi: core: Add missing scsi_device_put() in scsi_host_block() 2020-07-24 22:09:57 -04:00
scsi_lib_dma.c
scsi_logging.c scsi: core: Delete unnecessary buffer allocation for every loop iteration 2020-07-24 22:09:57 -04:00
scsi_logging.h scsi: core: Fix a compiler warning triggered by the SCSI logging code 2019-12-19 22:08:54 -05:00
scsi_netlink.c
scsi_pm.c scsi: block: pm: Simplify resume handling 2020-07-24 22:09:55 -04:00
scsi_priv.h scsi: core: Remove scsi_sdb_cache 2020-06-19 23:06:43 -04:00
scsi_proc.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
scsi_sas_internal.h
scsi_scan.c scsi: core: Remove cmd_list functionality 2020-02-28 20:54:55 -05:00
scsi_sysctl.c
scsi_sysfs.c scsi: core: Use scnprintf() for avoiding potential buffer overflow 2020-03-17 13:36:12 -04:00
scsi_trace.c scsi: scsi_trace: Use get_unaligned_be24() 2020-03-16 22:08:36 -04:00
scsi_transport_api.h
scsi_transport_fc.c
scsi_transport_iscsi.c scsi: iscsi: Do not put host in iscsi_set_flashnode_param() 2020-07-28 22:56:24 -04:00
scsi_transport_sas.c scsi: scsi_transport_sas: Add missing newline in sysfs 'enable' attribute 2020-07-24 22:09:53 -04:00
scsi_transport_spi.c
scsi_transport_srp.c
scsicam.c block: move struct partition out of genhd.h 2020-03-24 07:57:08 -06:00
sd.c scsi: sd: Fix kdoc comment format 2020-07-08 01:03:44 -04:00
sd.h scsi: sd_zbc: Remove unused inline functions 2020-07-15 16:10:42 -04:00
sd_dif.c
sd_zbc.c scsi: sd_zbc: Don't limit max_zone_append sectors to max_hw_sectors 2020-07-24 22:09:53 -04:00
sense_codes.h
ses.c
sg.c scsi: sg: add sg_remove_request in sg_write 2020-04-14 21:15:53 -04:00
sgiwd93.c scsi: sgiwd93: Remove unneeded semicolon in sgiwd93.c 2020-04-24 18:21:29 -04:00
sim710.c
sni_53c710.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
sr.c SCSI misc on 20200613 2020-06-13 13:17:49 -07:00
sr.h scsi: sr: get rid of sr global mutex 2020-02-24 15:01:57 -05:00
sr_ioctl.c
sr_vendor.c scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled 2020-02-24 14:59:01 -05:00
st.c scsi: st: Convert convert get_user_pages() --> pin_user_pages() 2020-06-09 21:57:26 -04:00
st.h
st_options.h
stex.c scsi: Replace zero-length array with flexible-array member 2020-03-11 23:07:56 -04:00
storvsc_drv.c scsi: storvsc: Add validation for untrusted Hyper-V values 2020-07-08 01:34:08 -04:00
sun3_scsi.c
sun3_scsi_vme.c
sun3x_esp.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
sun_esp.c
virtio_scsi.c scsi: virtio_scsi: Demote seemingly unintentional kerneldoc header 2020-07-15 17:25:16 -04:00
vmw_pvscsi.c scsi: vmw_pvscsi: Use true, false for adapter->use_msg 2020-05-07 22:03:54 -04:00
vmw_pvscsi.h
wd33c93.c
wd33c93.h
wd719x.c
wd719x.h
xen-scsifront.c
zalon.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
zorro7xx.c
zorro_esp.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00