![]() | |||||||||||||
Messages in this thread |
David Miller wrote:
> You should only do a netif_stop_queue() in your device
> initialization, at the very end of ->open() processing
> when you've fully committed to returning success.
>
> You should not, in particular, be doing a netif_wake_queue()
> before you've even done a netif_start_queue().
>
> Many of these drivers are using netif_{stop,wake}_queue()
> to stop packet flow, in particular when link state changes,
> and netif_carrier_{on,off}() already does all of that for
> you.
>
> Really, anything outside of:
>
> 1) netif_start_queue() in ->open()
> 2) netif_stop_queue() in ->stop()
> 3) netif_{stop,wake}_queue() in the TX packet handling path
>
> is superfluous.
Thanks, I wasn't aware of this. I'll try to fix up eth1394 this way as
time permits.
--
Stefan Richter
-=====-==--- -=== =-=-=
http://arcgraph.de/sr/
| ||||||||||||
| Last update: 2008-07-21 23:29 [from the cache] ©2003-2008 | |||||||||||||