linux-stable/drivers/scsi/ufs
Vijay Viswanath 10e5e37581 scsi: ufs: Add clock ungating to a separate workqueue
UFS driver can receive a request during memory reclaim by kswapd.  So
when ufs driver puts the ungate work in queue, and if there are no idle
workers, kthreadd is invoked to create a new kworker. Since kswapd task
holds a mutex which kthreadd also needs, this can cause a deadlock
situation. So ungate work must be done in a separate work queue with
WQ_MEM_RECLAIM flag enabled.  Such a workqueue will have a rescue thread
which will be called when the above deadlock condition is possible.

Signed-off-by: Vijay Viswanath <vviswana@codeaurora.org>
Signed-off-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Reviewed-by: Subhash Jadavani <subhashj@codeaurora.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2018-05-18 12:22:47 -04:00
..
Kconfig
Makefile scsi: ufs: sysfs: attribute group for existing sysfs entries. 2018-02-15 18:34:24 -05:00
tc-dwc-g210-pci.c scsi: ufs: Fix kernel-doc errors and warnings 2018-03-01 21:00:23 -05:00
tc-dwc-g210-pltfrm.c scsi: ufs: Fix kernel-doc errors and warnings 2018-03-01 21:00:23 -05:00
tc-dwc-g210.c
tc-dwc-g210.h
ufs-qcom.c scsi: ufs: ufs-qcom: remove broken hci version quirk 2018-05-18 12:22:35 -04:00
ufs-qcom.h scsi: ufs-qcom: Remove uses of UFS_BIT() macro 2017-10-11 13:44:31 -04:00
ufs-sysfs.c scsi: ufs: Add support for Auto-Hibernate Idle Timer 2018-03-21 21:21:25 -04:00
ufs-sysfs.h scsi: ufs: sysfs: attributes 2018-02-15 18:35:05 -05:00
ufs.h scsi: ufs: sysfs: attributes 2018-02-15 18:35:05 -05:00
ufs_quirks.h
ufshcd-dwc.c
ufshcd-dwc.h
ufshcd-pci.c scsi: ufs: Fix kernel-doc errors and warnings 2018-03-01 21:00:23 -05:00
ufshcd-pltfrm.c
ufshcd-pltfrm.h
ufshcd.c scsi: ufs: Add clock ungating to a separate workqueue 2018-05-18 12:22:47 -04:00
ufshcd.h scsi: ufs: Add clock ungating to a separate workqueue 2018-05-18 12:22:47 -04:00
ufshci-dwc.h
ufshci.h scsi: ufs: Add support for Auto-Hibernate Idle Timer 2018-03-21 21:21:25 -04:00
unipro.h