diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2011-04-15 20:08:19 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-09 15:06:39 -0700 |
commit | 3fe962c04818a4634255beb3be9f236d36350543 (patch) | |
tree | a27bbb6047846768cb073650d159a3ac4870a50c /include | |
parent | f038f4d893e9ef35dd38f1ca01001dfe21c5f8f5 (diff) | |
download | lwn-3fe962c04818a4634255beb3be9f236d36350543.tar.gz lwn-3fe962c04818a4634255beb3be9f236d36350543.zip |
mmc: fix a race between card-detect rescan and clock-gate work instances
commit 26fc8775b51484d8c0a671198639c6d5ae60533e upstream.
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>
Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include')
-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 bcb793ec7374..eb792cb6d745 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 */ |