Re: [PACTH v3] mmc: sdhci: Do not allow tuning procedure to be interrupted

Robert Foss
2016-08-17T17:37:52Z

On 2016-08-17 06:47 AM, Adrian Hunter wrote:
> On 17/08/16 00:25, robert.foss@collabora.com wrote:
>> From: Christopher Freeman <cfreeman@nvidia.com>
>>
>> wait_event_interruptible_timeout() will return early if the blocked
>> process receives a signal, causing the driver to abort the tuning
>> procedure and possibly leaving the controller in a bad state. Since the
>> tuning command is expected to complete quickly (<50ms) and we've set a
>> timeout, use wait_event_timeout() instead.
>>
>> Signed-off-by: Christopher Freeman <cfreeman@nvidia.com>
>> Tested-by: Robert Foss <robert.foss@collabora.com>
>> Signed-off-by: Robert Foss <robert.foss@collabora.com>
>> Reviewed-by: Benson Leung <bleung@chromium.org>
>
> The mmc block queues are kernel threads which I would expect ignore signals,
> so I am curious how you hit this?

The issue was discovered on (tegra2?) hardware that is sensitive to
being interrupted during tuning and having the controller left in a
sensitive state.

@Christopher Freeman: Maybe you can provide us with some additional details?

>
> In any case:
>
> Acked-by: Adrian Hunter <adrian.hunter@intel.com>
>