[patch 8/8] PCI Error Recovery: PPC64 core recovery routines
Benjamin Herrenschmidt
benh at kernel.crashing.org
Fri Aug 26 09:37:36 EST 2005
On Fri, 2005-08-26 at 09:18 +1000, Paul Mackerras wrote:
> Benjamin Herrenschmidt writes:
>
> > Ok, so what is the problem then ? Why do we have to wait at all ? Why
> > not just unplug/replug right away ?
>
> We'd have to be absolutely certain that the driver could not possibly
> take another interrupt or try to access the device on behalf of the
> old instance of the device by the time it returned from the remove
> function. I'm not sure I'd trust most drivers that far...
Hrm... If a driver gets that wrong, then it will also blow up when
unloaded as a module. All drivers should be fully shut down by the time
they return from remove(). free_irq() is synchronous as is iounmap() and
both of those are usually called as part of remove(). I wouldn't be too
worried here.
Ben.
More information about the Linuxppc64-dev
mailing list