Files
linux/drivers
Guennadi Liakhovetski 0db13fc2ab mmc: fix a deadlock between system suspend and MMC block IO
Performing MMC block IO with simultaneous STR can lead to a deadlock: the
mmc_pm_notify() function claims the host and then calls bus .remove()
method, which lands in mmc_blk_remove(), which calls mmc_blk_remove_req()
then it goes to -> mmc_cleanup_queue() -> kthread_stop(), which waits for
the mmc-block thread to stop. If the mmc-block thread at that time is
processing block requests, it will also try to claim the host in
mmc_blk_issue_rq() and block there. This patch fixes the problem by
calling .remove() before claiming the host.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Arindam Nath <arindam.nath@amd.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-01-12 15:17:17 -05:00
..
2011-12-15 11:25:43 -07:00
2011-11-29 18:39:37 -05:00
2011-12-20 18:53:26 +01:00
2011-12-07 09:06:37 -08:00
2011-12-05 17:06:37 +01:00
2011-12-13 16:13:15 -08:00
2012-01-11 23:58:47 -05:00