patch-2.4.22 linux-2.4.22/net/sched/sch_gred.c
Next file: linux-2.4.22/net/sched/sch_htb.c
Previous file: linux-2.4.22/net/sched/sch_fifo.c
Back to the patch index
Back to the overall index
- Lines: 38
- Date:
2003-08-25 04:44:44.000000000 -0700
- Orig file:
linux-2.4.21/net/sched/sch_gred.c
- Orig date:
2003-06-13 07:51:39.000000000 -0700
diff -urN linux-2.4.21/net/sched/sch_gred.c linux-2.4.22/net/sched/sch_gred.c
@@ -259,8 +259,7 @@
return NULL;
}
-static int
-gred_drop(struct Qdisc* sch)
+static unsigned int gred_drop(struct Qdisc* sch)
{
struct sk_buff *skb;
@@ -269,20 +268,21 @@
skb = __skb_dequeue_tail(&sch->q);
if (skb) {
- sch->stats.backlog -= skb->len;
+ unsigned int len = skb->len;
+ sch->stats.backlog -= len;
sch->stats.drops++;
q= t->tab[(skb->tc_index&0xf)];
if (q) {
- q->backlog -= skb->len;
+ q->backlog -= len;
q->other++;
if (!q->backlog && !t->eqp)
PSCHED_GET_TIME(q->qidlestart);
- } else {
- D2PRINTK("gred_dequeue: skb has bad tcindex %x\n",skb->tc_index&0xf);
- }
+ } else {
+ D2PRINTK("gred_dequeue: skb has bad tcindex %x\n",skb->tc_index&0xf);
+ }
kfree_skb(skb);
- return 1;
+ return len;
}
q=t->tab[t->def];
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)