This patch removes dev->gso_skb as it is no longer necessary with
batching code.

cheers,
jamal

[NET_SCHED] kill dev->gso_skb
The batching code does what gso used to batch at the drivers.
There is no more need for gso_skb. If for whatever reason the
requeueing is a bad idea we are going to leave packets in dev->blist
(and still not need dev->gso_skb)

Signed-off-by: Jamal Hadi Salim <[EMAIL PROTECTED]>

---
commit c6d2d61a73e1df5daaa294876f62454413fcb0af
tree 1d7bf650096a922a6b6a4e7d6810f83320eb94dd
parent e26705f6ef7db034df7af3f4fccd7cd40b8e46e0
author Jamal Hadi Salim <[EMAIL PROTECTED]> Sun, 23 Sep 2007 12:25:10 -0400
committer Jamal Hadi Salim <[EMAIL PROTECTED]> Sun, 23 Sep 2007 12:25:10 -0400

 include/linux/netdevice.h |    3 ---
 net/sched/sch_generic.c   |   12 ------------
 2 files changed, 0 insertions(+), 15 deletions(-)

diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 443cded..7811729 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -560,9 +560,6 @@ struct net_device
        struct list_head        qdisc_list;
        unsigned long           tx_queue_len;   /* Max frames per queue allowed 
*/
 
-       /* Partially transmitted GSO packet. */
-       struct sk_buff          *gso_skb;
-
        /* ingress path synchronizer */
        spinlock_t              ingress_lock;
        struct Qdisc            *qdisc_ingress;
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
index 86a3f9d..b4e1607 100644
--- a/net/sched/sch_generic.c
+++ b/net/sched/sch_generic.c
@@ -172,13 +172,6 @@ static int xmit_get_pkts(struct net_device *dev,
        struct sk_buff *skb;
        int count = dev->xmit_win;
 
-       if (count  && dev->gso_skb) {
-               skb = dev->gso_skb;
-               dev->gso_skb = NULL;
-               count -= xmit_count_skbs(skb);
-               __skb_queue_tail(pktlist, skb);
-       }
-
        while (count > 0) {
                skb = q->dequeue(q);
                if (!skb)
@@ -654,7 +647,6 @@ void dev_activate(struct net_device *dev)
 void dev_deactivate(struct net_device *dev)
 {
        struct Qdisc *qdisc;
-       struct sk_buff *skb;
 
        spin_lock_bh(&dev->queue_lock);
        qdisc = dev->qdisc;
@@ -662,15 +654,11 @@ void dev_deactivate(struct net_device *dev)
 
        qdisc_reset(qdisc);
 
-       skb = dev->gso_skb;
-       dev->gso_skb = NULL;
        if (!skb_queue_empty(&dev->blist))
                skb_queue_purge(&dev->blist);
        dev->xmit_win = 1;
        spin_unlock_bh(&dev->queue_lock);
 
-       kfree_skb(skb);
-
        dev_watchdog_down(dev);
 
        /* Wait for outstanding dev_queue_xmit calls. */

Reply via email to