From: Jarek Poplawski <jarkao2@gmail.com> Date: Sun, 21 Sep 2008 01:48:43 +0200... ... Hmmm, looking at your patch.... It's only doing something new when the driver returns NETDEV_TX_BUSY from ->hard_start_xmit(). That _never_ happens in any sane driver. That case is for buggy devices that do not maintain their TX queue state properly. And in fact it's a case for which I advocate we just drop the packet instead of requeueing. :-) Oh I see, you're concerned about that cases where qdisc_restart() ends up using the default initialization of the 'ret' variable. Really, for the case where the driver actually returns NETDEV_TX_BUSY we _do_ want to unconditionally __netif_schedule(), since the device doesn't maintain it's queue state in the normal way. Therefore it seems logical that what really needs to happen is that we simply pick some new local special token value for 'ret' so that we can handle that case. "-1" would probably work fine. So I'm dropping your patch. I also think the qdisc_run() test needs to be there. When the TX queue fills up, we will doing tons of completely useless work going: 1) ->dequeue 2) qdisc unlock 3) TXQ lock 4) test state 5) TXQ unlock 6) qdisc lock 7) ->requeue for EVERY SINGLE packet that is generated towards that device. That has to be expensive, and I am still very much convinced that this was the original regression cause that made me put that TXQ state test back into qdisc_run(). -- 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
| Jesse Barnes | Re: [stable] [BUG][PATCH] cpqphp: fix kernel NULL pointer dereference |
| Greg KH | [003/136] p54usb: add Zcomax XG-705A usbid |
| Magnus Damm | [PATCH 03/07] ARM: Use shared GIC entry macros on Realview |
| Oliver Neukum | Re: [Bug #13682] The webcam stopped working when upgrading from 2.6.29 to 2.6.30 |
| Martin Schwidefsky | Re: [PATCH] optimized ktime_get[_ts] for GENERIC_TIME=y |
git: | |
| Junio C Hamano | Re: Some advanced index playing |
| Jeff King | Re: confusion over the new branch and merge config |
| Robin Rosenberg | Re: cvs2svn conversion directly to git ready for experimentation |
| Linus Torvalds | git binary size... |
| Ævar Arnfjörð Bjarmason | Re: Challenge with Git-Bash |
| Linux Kernel Mailing List |
