Re: [PATCH] firewire: Fix ohci free_irq() warning

From: Alan Stern
Date: Sat Feb 02 2013 - 10:21:13 EST


On Sat, 2 Feb 2013, Stefan Richter wrote:

> OK. I, as a naive driver maintainer, expect a sequence like
> [suspend request] -> suspend() -> [if ret==0, suspended state] ->
> [resume request] -> resume() -> ...
> but what apparently happens is
> [suspend request] -> suspend() -> [if ret==0, suspended state] ->
> [resume request] -> remove() -> ...
>
> If you had an ExpressCard or CardBus controller, then it could of course
> happen that the PC is suspended, then the controller card physically
> removed, and then a resume been requested. Question to all: Would the
> driver's resume() method be called on the MIA device be called, or would
> the driver's remove() method be called in such a case?

It depends on the subsystem. While processing a resume callback for a
device (or for the device's parent), if the subsystem detects that the
device has been removed then most likely it would skip calling the
driver's resume method and would call the remove method instead.

Alan Stern

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