[PATCH] mmc: dw_mmc: make multiple instances of dw_mci_card_workqueue

Will Newton will.newton at gmail.com
Wed May 2 05:07:45 EDT 2012


On Tue, May 1, 2012 at 10:57 PM, Thomas Abraham
<thomas.abraham at linaro.org> wrote:
> The variable 'dw_mci_card_workqueue' is a global variable shared between
> multiple instances of the dw_mmc host controller. Due to this, data
> corruption has been noticed when multiple instances of dw_mmc controllers
> are actively reading/writing the media. Fix this by adding a instance
> of 'struct workqueue_struct' for each host instance and removing the
> global 'dw_mci_card_workqueue' instance.
>
> Signed-off-by: Thomas Abraham <thomas.abraham at linaro.org>
> ---
>  drivers/mmc/host/dw_mmc.c  |   14 ++++++--------
>  include/linux/mmc/dw_mmc.h |    1 +
>  2 files changed, 7 insertions(+), 8 deletions(-)

Looks good.

Acked-by: Will Newton <will.newton at imgtec.com>



More information about the linux-arm-kernel mailing list