On Wed, 2008-05-07 at 15:10 +0800, Herbert Xu wrote:Good point. Somehow I thought this couldn't happen but of course it can since we don't do hw GSO. But I want to get rid of that much more than I want to get rid of the fragmentation code :/ Also, if I need to keep that code, I will absolutely not use skb_segment either as it's more efficient to just trim the existing skb to make the first segment out of it (like the code does now) rather than reallocate that too. However, I'm sure it's buggy under certain circumstances we never understood (as indicated by a WARN_ON triggering that shouldn't and lots of reports about that) and I don't like the extra tasklet. I guess I could remove it and copy the existing code into the wireless qdisc, but that would be weird. But you're right, it doesn't work this way. I'll have to think of something. Maybe I can rip out all the retry logic and just store an skb myself (like dev->gso_skb) and return NETDEV_TX_BUSY when I used that one and the queue got full because of it. That'll requeue a lot when non-gso skbs are coming in, but mind you this is not a common case, most of the time fragmentation will not be enabled and even when it is device queues should be long enough. johannes
| Greg Kroah-Hartman | [PATCH 004/196] Chinese: add translation of SubmittingPatches |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Willy Tarreau | Re: Linux 2.6.21 |
| Jan Kundrát | kswapd high CPU usage with no swap |
git: | |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | [GIT]: Networking |
| David Miller | Re: [PATCH] tcp: splice as many packets as possible at once |
