diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2011-04-15 20:08:19 +0200 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-04-27 19:16:12 -0400 |
commit | 26fc8775b51484d8c0a671198639c6d5ae60533e (patch) | |
tree | df906e9e78fada3739e576ba0546b726de58f585 /include/linux/mmc | |
parent | f69475142136c8ad9b9c717aea2ff907aed9f863 (diff) | |
download | op-kernel-dev-26fc8775b51484d8c0a671198639c6d5ae60533e.zip op-kernel-dev-26fc8775b51484d8c0a671198639c6d5ae60533e.tar.gz |
mmc: fix a race between card-detect rescan and clock-gate work instances
Currently there is a race in the MMC core between a card-detect
rescan work and the clock-gating work, scheduled from a command
completion. Fix it by removing the dedicated clock-gating mutex
and using the MMC standard locking mechanism instead.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <damm@opensource.se>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Cc: <stable@kernel.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'include/linux/mmc')
-rw-r--r-- | include/linux/mmc/host.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index bcb793e..eb792cb 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h @@ -183,7 +183,6 @@ struct mmc_host { struct work_struct clk_gate_work; /* delayed clock gate */ unsigned int clk_old; /* old clock value cache */ spinlock_t clk_lock; /* lock for clk fields */ - struct mutex clk_gate_mutex; /* mutex for clock gating */ #endif /* host specific block data */ |