From: Stefan Richter <stefanr@s5r6.in-berlin.de> Date: Mon, 21 Jul 2008 21:20:20 +0200You 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. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Greg Kroah-Hartman | [PATCH 002/196] Chinese: rephrase English introduction in HOWTO |
| Christoph Lameter | [00/41] Large Blocksize Support V7 (adds memmap support) |
| Chuck Ebbert | Re: Linux 2.6.21 |
git: | |
| Gerrit Renker | [PATCH 03/37] dccp: List management for new feature negotiation |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Hugh Dickins | Re: [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| David Miller | [GIT]: Networking |
