summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJarek Poplawski <jarkao2@gmail.com>2008-11-02 08:36:03 +0100
committerDavid S. Miller <davem@davemloft.net>2008-11-02 08:36:03 +0100
commit8ba25dad0ac78850cd46d91186a27d60f7314752 (patch)
treefbc784a4666ba4e740230fab804dc15bf30f2645
parentsch_netem: Remove classful functionality (diff)
downloadlinux-8ba25dad0ac78850cd46d91186a27d60f7314752.tar.xz
linux-8ba25dad0ac78850cd46d91186a27d60f7314752.zip
sch_netem: Replace ->requeue() method with open code
After removing netem classful functionality we are sure its inner qdisc is tfifo, so we can replace qdisc->ops->requeue() method with open code. After this patch there are no more ops->requeue() users. The idea of this patch is by Patrick McHardy. Signed-off-by: Jarek Poplawski <jarkao2@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sched/sch_netem.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c
index 2ad09594c8bc..1aa43453705c 100644
--- a/net/sched/sch_netem.c
+++ b/net/sched/sch_netem.c
@@ -233,7 +233,11 @@ static int netem_enqueue(struct sk_buff *skb, struct Qdisc *sch)
*/
cb->time_to_send = psched_get_time();
q->counter = 0;
- ret = q->qdisc->ops->requeue(skb, q->qdisc);
+
+ __skb_queue_head(&q->qdisc->q, skb);
+ q->qdisc->qstats.backlog += qdisc_pkt_len(skb);
+ q->qdisc->qstats.requeues++;
+ ret = NET_XMIT_SUCCESS;
}
if (likely(ret == NET_XMIT_SUCCESS)) {