android_kernel_samsung_a7y1.../drivers/scsi
Adrian Hunter 66550a222a scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm()
[ Upstream commit 7c7cfdcf7f1777c7376fc9a239980de04b6b5ea1 ]

Fix the following BUG:

  [ 187.065689] BUG: kernel NULL pointer dereference, address: 000000000000001c
  [ 187.065790] RIP: 0010:ufshcd_vreg_set_hpm+0x3c/0x110 [ufshcd_core]
  [ 187.065938] Call Trace:
  [ 187.065959] ufshcd_resume+0x72/0x290 [ufshcd_core]
  [ 187.065980] ufshcd_system_resume+0x54/0x140 [ufshcd_core]
  [ 187.065993] ? pci_pm_restore+0xb0/0xb0
  [ 187.066005] ufshcd_pci_resume+0x15/0x20 [ufshcd_pci]
  [ 187.066017] pci_pm_thaw+0x4c/0x90
  [ 187.066030] dpm_run_callback+0x5b/0x150
  [ 187.066043] device_resume+0x11b/0x220

Voltage regulators are optional, so functions must check they exist
before dereferencing.

Note this issue is hidden if CONFIG_REGULATORS is not set, because the
offending code is optimised away.

Notes for stable:

The issue first appears in commit 57d104c153d3 ("ufs: add UFS power
management support") but is inadvertently fixed in commit 60f0187031c0
("scsi: ufs: disable vccq if it's not needed by UFS device") which in
turn was reverted by commit 730679817d83 ("Revert "scsi: ufs: disable vccq
if it's not needed by UFS device""). So fix applies v3.18 to v4.5 and
v5.1+

Fixes: 57d104c153d3 ("ufs: add UFS power management support")
Fixes: 730679817d83 ("Revert "scsi: ufs: disable vccq if it's not needed by UFS device"")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-06 21:33:01 +02:00
..
aacraid A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
aic7xxx A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bnx2fc scsi: bnx2fc: fix incorrect cast to u64 on shift operation 2020-04-06 19:03:14 +02:00
bnx2i A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
csiostor scsi: csiostor: fix missing data copy in csio_scsi_err_handler() 2020-04-06 16:42:58 +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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fcoe scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure 2020-04-06 20:50:12 +02:00
fnic A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ibmvscsi scsi: ibmvfc: fix WARN_ON during event pool release 2020-04-06 20:39:15 +02:00
isci A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
libfc scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure 2020-04-06 20:50:12 +02:00
libsas scsi: libsas: delete sas port if expander discover failed 2020-04-06 19:04:41 +02:00
lpfc scsi: lpfc: add check for loss of ndlp when sending RRQ 2020-04-06 19:03:12 +02:00
megaraid scsi: megaraid_sas: fix panic on loading firmware crashdump 2020-04-06 20:39:12 +02:00
mpt3sas scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA 2020-04-06 20:39:49 +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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
qla2xxx scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines 2020-04-06 16:43:06 +02:00
qla4xxx scsi: qla4xxx: avoid freeing unallocated dma memory 2020-04-06 18:20:19 +02:00
snic A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sym53c8xx_2 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ufs scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm() 2020-04-06 21:33:01 +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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipr.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ips.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi_trace.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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 Revert "scsi: sd: Keep disk read-only when re-reading partition" 2020-04-06 18:14:59 +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 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
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