[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5278A741.6040206@rosalab.ru>
Date: Tue, 05 Nov 2013 12:07:29 +0400
From: Eugene Shatokhin <eugene.shatokhin@...alab.ru>
To: Tomas Winkler <tomas.winkler@...el.com>
CC: Alexander Usyskin <alexander.usyskin@...el.com>,
Nicolò Costanza
<abitrules@...oo.it>, Alex Burmashev <alex.burmashev@...alab.ru>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: mei: cancel stall timers in mei_reset
On 11/04/2013 07:48 PM, Eugene Shatokhin wrote:
> ----- Original Message -----
>> I would appreciate the full log and your .config
>
> I have attached the config and the log.
>
> Meanwhile, I have found one suspicious place in the code that could be related: mei_reset() ignores the return value of mei_hw_start(). According to the logs, there was at least the following interesting call sequence before things went wrong:
>
> mei_reset() => mei_hw_start() => .hw_start() callback, which is mei_me_hw_start() => mei_me_hw_ready_wait().
>
> mei_me_hw_ready_wait() reported "wait hw ready failed" and returned -ETIMEDOUT, that error was propagated to mei_hw_start(). mei_reset(), however, does not check the return value of that function and goes on even if it returns an error: sets dev->dev_state to MEI_DEV_INIT_CLIENTS, calls mei_hbm_start_req(dev), etc.
>
> I am not sure if this is intentional and if this is related to the problem, but still.
>
Oh, looks like it is mei_hw_start() that first ignores the error. Might
be a problem anyway.
Regards,
Eugene
--
Eugene Shatokhin, ROSA Laboratory.
www.rosalab.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists