]> www.infradead.org Git - users/jedix/linux-maple.git/commit
scsi: ufs: core: Fix another deadlock during RTC update
authorPeter Wang <peter.wang@mediatek.com>
Thu, 24 Oct 2024 01:54:53 +0000 (09:54 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 25 Oct 2024 18:51:34 +0000 (14:51 -0400)
commitcb7e509c4e0197f63717fee54fb41c4990ba8d3a
tree3a7d96a43ce976dd4662e002a392e57e0490873a
parentd28d17a845600dd9f7de241de9b1528a1b138716
scsi: ufs: core: Fix another deadlock during RTC update

If ufshcd_rtc_work calls ufshcd_rpm_put_sync() and the pm's usage_count
is 0, we will enter the runtime suspend callback.  However, the runtime
suspend callback will wait to flush ufshcd_rtc_work, causing a deadlock.

Replace ufshcd_rpm_put_sync() with ufshcd_rpm_put() to avoid the
deadlock.

Fixes: 6bf999e0eb41 ("scsi: ufs: core: Add UFS RTC support")
Cc: stable@vger.kernel.org #6.11.x
Signed-off-by: Peter Wang <peter.wang@mediatek.com>
Link: https://lore.kernel.org/r/20241024015453.21684-1-peter.wang@mediatek.com
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/core/ufshcd.c