RE: mei: cancel stall timers in mei_reset

From: Eugene Shatokhin
Date: Mon Nov 04 2013 - 10:49:04 EST


----- 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.

Regards,
Eugene

Attachment: files.tar.bz2
Description: application/bzip-compressed-tar