From: David S. Miller Date: Tue, 23 Sep 2008 05:15:58 +0000 (-0700) Subject: pkt_sched: Always use q->requeue in dev_requeue_skb(). X-Git-Tag: v2.6.28-rc1~717^2~213 X-Git-Url: https://bbs.cooldavid.org/git/?a=commitdiff_plain;h=f0876520b0b721bedafd9cec3b1b0624ae566eee;p=net-next-2.6.git pkt_sched: Always use q->requeue in dev_requeue_skb(). There is no reason to call into the complicated qdiscs just to remember the last SKB where we found the device blocked. The SKB is outside of the qdiscs realm at this point. Signed-off-by: David S. Miller --- diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index 5961536be60..1b508bd1c06 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c @@ -44,10 +44,7 @@ static inline int qdisc_qlen(struct Qdisc *q) static inline int dev_requeue_skb(struct sk_buff *skb, struct Qdisc *q) { - if (unlikely(skb->next)) - __skb_queue_head(&q->requeue, skb); - else - q->ops->requeue(skb, q); + __skb_queue_head(&q->requeue, skb); __netif_schedule(q); return 0;