Re: [RFC] New Driver Model for 2.5

Alan Cox (alan@lxorguk.ukuu.org.uk)
Tue, 23 Oct 2001 21:54:23 +0100 (BST)


> >"Stop accepting new requests" is nontrivial as well, in the general
> >case. New requests that can't be discarded need to be queued
> >somewhere. Whose responsibility is that? Ideally at some point where
> >a queue already exists, possibly in the requester.
>
> Some driver already handle queues. In the case of network driver, just
> stop your network queue and stop accepting incoming packets. If your
> driver is too simple to have queues, a simple semaphore on entry points
> can often be enough. You shouldn't deadlock as you are not supposed to
> re-enter a sleeping driver in step 2.

Stop accepting new requests is not simple. To complete existing requests you
might need an arbitary other module to complete a new request you submit
as part of your shutdown.

Alan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/