android_kernel_samsung_a7y1.../drivers/scsi
Martin K. Petersen a43e3f8e44 scsi: sd: Fix optimal I/O size for devices that change reported values
commit ea697a8bf5a4161e59806fab14f6e4a46dc7dcb0 upstream.

Some USB bridge devices will return a default set of characteristics during
initialization. And then, once an attached drive has spun up, substitute
the actual parameters reported by the drive. According to the SCSI spec,
the device should return a UNIT ATTENTION in case any reported parameters
change. But in this case the change is made silently after a small window
where default values are reported.

Commit a83da8a4509d ("scsi: sd: Optimal I/O size should be a multiple of
physical block size") validated the reported optimal I/O size against the
physical block size to overcome problems with devices reporting nonsensical
transfer sizes. However, this validation did not account for the fact that
aforementioned devices will return default values during a brief window
during spin-up. The subsequent change in reported characteristics would
invalidate the checking that had previously been performed.

Unset a previously configured optimal I/O size should the sanity checking
fail on subsequent revalidate attempts.

Link: https://lore.kernel.org/r/33fb522e-4f61-1b76-914f-c9e6a3553c9b@gmail.com
Cc: Bryan Gurney <bgurney@redhat.com>
Cc: <stable@vger.kernel.org>
Reported-by: Bernhard Sulzer <micraft.b@gmail.com>
Tested-by: Bernhard Sulzer <micraft.b@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-04-07 14:24:15 +02:00
..
aacraid A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aic7xxx scsi: aic7xxx: Adjust indentation in ahc_find_syncrate 2020-04-07 13:56:24 +02:00
aic94xx A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
arcmsr A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
arm A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
be2iscsi A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bfa scsi: bfa: release allocated memory in case of error 2020-04-07 13:33:00 +02:00
bnx2fc scsi: bnx2fc: fix incorrect cast to u64 on shift operation 2020-04-06 19:03:14 +02:00
bnx2i scsi: bnx2i: fix potential use after free 2020-04-07 13:38:54 +02:00
csiostor scsi: csiostor: Adjust indentation in csio_device_reset 2020-04-07 13:50:43 +02:00
cxgbi scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() 2020-04-06 19:04:39 +02:00
cxlflash A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
device_handler A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dpt A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
esas2r scsi: esas2r: unlock on error in esas2r_nvram_read_direct() 2020-04-07 13:38:50 +02:00
fcoe scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure 2020-04-06 20:50:12 +02:00
fnic scsi: fnic: do not queue commands during fwreset 2020-04-07 13:48:42 +02:00
ibmvscsi scsi: ibmvfc: fix WARN_ON during event pool release 2020-04-06 20:39:15 +02:00
isci scsi: isci: Change sci_controller_start_task's return type to sci_status 2020-04-07 12:34:46 +02:00
libfc scsi: libfc: fix null pointer dereference on a null lport 2020-04-07 13:42:31 +02:00
libsas scsi: libsas: stop discovering if oob mode is disconnected 2020-04-07 13:24:18 +02:00
lpfc scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func 2020-04-07 13:24:13 +02:00
megaraid scsi: megaraid_sas: reduce module load time 2020-04-07 13:40:52 +02:00
mpt3sas scsi: mpt3sas: Fix clear pending bit in ioctl status 2020-04-07 13:22:39 +02:00
mvsas A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
osd A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pcmcia A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pm8001 scsi: pm80xx: Fix for SATA device discovery 2020-04-07 13:23:28 +02:00
qla2xxx scsi: qla2xxx: fix a potential NULL pointer dereference 2020-04-07 13:55:29 +02:00
qla4xxx scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free 2020-04-07 13:50:45 +02:00
snic A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sym53c8xx_2 scsi: sym53c8xx: fix NULL pointer dereference panic in sym_int_sir() 2020-04-07 12:27:26 +02:00
ufs scsi: ufs: Fix ufshcd_probe_hba() reture value in case ufshcd_scsi_add_wlus() fails 2020-04-07 13:54:27 +02:00
3w-9xxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
3w-9xxx.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
3w-sas.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
3w-sas.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
3w-xxxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
3w-xxxx.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
53c700_d.h_shipped A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
53c700.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
53c700.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
53c700.scr A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a100u2w.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a100u2w.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a2091.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a2091.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a3000.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a3000.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
a4000t.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
advansys.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha152x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha152x.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha1542.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha1542.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha1740.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aha1740.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
am53c974.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
atari_NCR5380.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
atari_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
atp870u.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
atp870u.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
BusLogic.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
BusLogic.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bvme6000_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ch.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
constants.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dc395x.c scsi: dc395x: fix DMA API usage in sg_update_list 2020-04-07 12:34:54 +02:00
dc395x.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dmx3191d.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dpt_i2o.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dpti.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dtc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dtc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eata_generic.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eata_pio.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eata_pio.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eata.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
esp_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
esp_scsi.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fdomain.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fdomain.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
FlashPoint.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
g_NCR5380_mmio.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
g_NCR5380.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
g_NCR5380.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gdth_ioctl.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gdth_proc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gdth_proc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gdth.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gdth.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gvp11.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gvp11.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
hosts.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
hpsa_cmd.h scsi: hpsa: correct ioaccel2 chaining 2020-04-06 19:17:51 +02:00
hpsa.c scsi: hpsa: correct scsi command status issue after reset 2020-04-06 20:49:04 +02:00
hpsa.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
hptiop.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
hptiop.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
imm.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
imm.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
in2000.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
in2000.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
initio.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
initio.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipr.c scsi: ipr: Fix softlockup when rescanning devices in petitboot 2020-04-07 14:24:01 +02:00
ipr.h scsi: ipr: Fix softlockup when rescanning devices in petitboot 2020-04-07 14:24:01 +02:00
ips.c scsi: ips: fix missing break in switch 2020-04-07 12:34:40 +02:00
ips.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iscsi_boot_sysfs.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iscsi_tcp.c scsi: iscsi: Don't destroy session if there are outstanding connections 2020-04-07 13:56:55 +02:00
iscsi_tcp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
jazz_esp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Kconfig scsi: fix kconfig dependency warning related to 53C700_LE_ON_BE 2020-04-07 09:29:03 +02:00
lasi700.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
libiscsi_tcp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
libiscsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac_esp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac53c94.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac53c94.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Makefile A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
megaraid.c scsi: megaraid: disable device when probe failed after enabled device 2020-04-07 09:24:00 +02:00
megaraid.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mesh.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mesh.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mvme16x_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mvme147.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mvme147.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mvumi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mvumi.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR_D700.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR_D700.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR_Q720.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR_Q720.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ncr53c8xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ncr53c8xx.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR53c406a.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR5380.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
NCR5380.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nsp32_debug.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nsp32_io.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nsp32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nsp32.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
osst_detect.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
osst_options.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
osst.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
osst.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pas16.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pas16.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pmcraid.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pmcraid.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppa.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppa.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ps3rom.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qla1280.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qla1280.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qlogicfas.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qlogicfas408.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qlogicfas408.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qlogicpti.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qlogicpti.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
raid_class.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
script_asm.pl A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_common.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_debug.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_devinfo.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_dh.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_error.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_ioctl.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_lib_dma.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_lib.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_logging.c scsi: core: Reduce memory required for SCSI logging 2020-04-07 07:43:20 +02:00
scsi_logging.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_module.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_netlink.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_pm.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_priv.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_proc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_sas_internal.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_scan.c scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c 2020-04-06 14:50:30 +02:00
scsi_srpmb-teegris.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_srpmb.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_srpmb.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_sysctl.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_sysfs.c scsi: core: try to get module before removing device 2020-04-07 09:26:40 +02:00
scsi_trace.c scsi: core: scsi_trace: Use get_unaligned_be*() 2020-04-07 13:38:58 +02:00
scsi_transport_api.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_transport_fc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_transport_iscsi.c scsi: iscsi: Don't destroy session if there are outstanding connections 2020-04-07 13:56:55 +02:00
scsi_transport_sas.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_transport_spi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_transport_srp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_typedefs.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsicam.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sd_dif.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sd.c scsi: sd: Fix optimal I/O size for devices that change reported values 2020-04-07 14:24:15 +02:00
sd.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ses.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sg.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sgiwd93.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sim710.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sni_53c710.c scsi: sni_53c710: fix compilation error 2020-04-07 09:29:01 +02:00
sr_ioctl.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sr_vendor.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sr.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sr.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
st_options.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
st.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
st.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
stex.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
storvsc_drv.c scsi: storvsc: Fix calculation of sub-channel count 2020-04-06 16:42:21 +02:00
sun_esp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sun3_scsi_vme.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sun3_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sun3_scsi.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sun3x_esp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sym53c416.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sym53c416.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
t128.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
t128.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
u14-34f.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ultrastor.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ultrastor.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
virtio_scsi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vmw_pvscsi.c scsi: vmw_pscsi: Fix use-after-free in pvscsi_queue_lck() 2020-04-06 19:14:18 +02:00
vmw_pvscsi.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wd33c93.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wd33c93.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wd719x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wd719x.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wd7000.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
xen-scsifront.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
zalon.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
zorro7xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30