Re: [PATCH v2] mmc: dw_mmc: Make sure we don't get stuck when we get an error

From: Doug Anderson
Date: Wed Aug 13 2014 - 09:38:34 EST


Hi,

On Wed, May 21, 2014 at 2:08 AM, Seungwon Jeon <tgih.jun@xxxxxxxxxxx> wrote:
> On Wed, May 21, 2014, Doug Anderson wrote:
>> If we happened to get a data error at just the wrong time the dw_mmc
>> driver could get into a state where it would never complete its
>> request. That would leave the caller just hanging there.
>>
>> We fix this two ways and both of the two fixes on their own appear to
>> fix the problems we've seen:
>>
>> 1. Fix a race in the tasklet where the interrupt setting the data
>> error happens _just after_ we check for it, then we get a
>> EVENT_XFER_COMPLETE. We fix this by repeating a bit of code.
>> 2. Fix it so that if we detect that we've got an error in the "data
>> busy" state and we're not going to do anything else we end the
>> request and unblock anyone waiting.
>>
>> Signed-off-by: Doug Anderson <dianders@xxxxxxxxxxxx>
>> Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@xxxxxxxxx>
>
> It will be applied after "mmc: dw_mmc: change to use recommended reset procedure"
>
> Acked-by: Seungwon Jeon <tgih.jun@xxxxxxxxxxx>
>
> Thanks,
> Seungwon Jeon

I saw that Ulf applied "mmc: dw_mmc: change to use recommended reset
procedure". Could we apply this one now, too? Do you want me to
repost?

-Doug
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/