提交 17045755 编写于 作者: E Eric Dumazet 提交者: David S. Miller

net: sched: factorize code (qdisc_drop())

Use qdisc_drop() helper where possible.
Signed-off-by: NEric Dumazet <edumazet@google.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 041441d0
......@@ -332,15 +332,13 @@ static int choke_enqueue(struct sk_buff *skb, struct Qdisc *sch)
}
q->stats.pdrop++;
sch->qstats.drops++;
kfree_skb(skb);
return NET_XMIT_DROP;
return qdisc_drop(skb, sch);
congestion_drop:
congestion_drop:
qdisc_drop(skb, sch);
return NET_XMIT_CN;
other_drop:
other_drop:
if (ret & __NET_XMIT_BYPASS)
sch->qstats.drops++;
kfree_skb(skb);
......
......@@ -265,8 +265,7 @@ static int dsmark_enqueue(struct sk_buff *skb, struct Qdisc *sch)
return NET_XMIT_SUCCESS;
drop:
kfree_skb(skb);
sch->qstats.drops++;
qdisc_drop(skb, sch);
return NET_XMIT_SUCCESS | __NET_XMIT_BYPASS;
}
......
......@@ -558,9 +558,7 @@ static int htb_enqueue(struct sk_buff *skb, struct Qdisc *sch)
__skb_queue_tail(&q->direct_queue, skb);
q->direct_pkts++;
} else {
kfree_skb(skb);
sch->qstats.drops++;
return NET_XMIT_DROP;
return qdisc_drop(skb, sch);
}
#ifdef CONFIG_NET_CLS_ACT
} else if (!cl) {
......
......@@ -88,9 +88,7 @@ teql_enqueue(struct sk_buff *skb, struct Qdisc *sch)
return NET_XMIT_SUCCESS;
}
kfree_skb(skb);
sch->qstats.drops++;
return NET_XMIT_DROP;
return qdisc_drop(skb, sch);
}
static struct sk_buff *
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册