]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power
authorAdrian Hunter <adrian.hunter@intel.com>
Mon, 20 Mar 2017 17:50:30 +0000 (19:50 +0200)
committerTim Gardner <tim.gardner@canonical.com>
Thu, 30 Mar 2017 12:35:45 +0000 (06:35 -0600)
commit936a4971ed014f3bde6a62526a08b26af194bd2b
treee775d7f54e5d377e0b64c07b6102954560f0ffaf
parent17982c5407a7fcf22ff3fa76601ab1805a9a9116
mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power

BugLink: http://bugs.launchpad.net/bugs/1677589
commit 027fb89e61054b4aedd962adb3e2003dec78a716 upstream.

Disabling interrupts for even a millisecond can cause problems for some
devices. That can happen when Intel host controllers wait for the present
state to propagate.

The spin lock is not necessary here. Anything that is racing with changes
to the I/O state is already broken. The mmc core already provides
synchronization via "claiming" the host.

Although the spin lock probably should be removed from the code paths that
lead to this point, such a patch would touch too much code to be suitable
for stable trees. Consequently, for this patch, just drop the spin lock
while waiting.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Ludovic Desroches <ludovic.desroches@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
drivers/mmc/host/sdhci-pci-core.c