summaryrefslogtreecommitdiff
path: root/net/sunrpc
diff options
context:
space:
mode:
authorJeffrey Hugo <jeffrey.l.hugo@gmail.com>2020-05-25 23:41:25 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-06-25 16:41:55 +0300
commit291ae253fb695258fbdf2d73f5f37b43f597e537 (patch)
tree682e1d8cd8c455fefd35b05a0dd35bee3e5a45db /net/sunrpc
parentb4671b5ca22ec0e81a6fcc30f4a50b0dd78740d5 (diff)
downloadlinux-291ae253fb695258fbdf2d73f5f37b43f597e537.tar.xz
scsi: ufs-qcom: Fix scheduling while atomic issue
[ Upstream commit 3be60b564de49875e47974c37fabced893cd0931 ] ufs_qcom_dump_dbg_regs() uses usleep_range, a sleeping function, but can be called from atomic context in the following flow: ufshcd_intr -> ufshcd_sl_intr -> ufshcd_check_errors -> ufshcd_print_host_regs -> ufshcd_vops_dbg_register_dump -> ufs_qcom_dump_dbg_regs This causes a boot crash on the Lenovo Miix 630 when the interrupt is handled on the idle thread. Fix the issue by switching to udelay(). Link: https://lore.kernel.org/r/20200525204125.46171-1-jeffrey.l.hugo@gmail.com Fixes: 9c46b8676271 ("scsi: ufs-qcom: dump additional testbus registers") Reviewed-by: Bean Huo <beanhuo@micron.com> Reviewed-by: Avri Altman <avri.altman@wdc.com> Signed-off-by: Jeffrey Hugo <jeffrey.l.hugo@gmail.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net/sunrpc')
0 files changed, 0 insertions, 0 deletions