summaryrefslogtreecommitdiffstats
path: root/net/sched/sch_netem.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2006-10-23 06:00:33 +0200
committerDavid S. Miller <davem@sunset.davemloft.net>2006-10-23 06:00:33 +0200
commit4e8a5201506423e0241202de1349422af4260296 (patch)
treee562a6cdbee37e3805551af92b264fa93d722c4b /net/sched/sch_netem.c
parent[NET]: kernel-doc fix for sock.h (diff)
downloadlinux-4e8a5201506423e0241202de1349422af4260296.tar.xz
linux-4e8a5201506423e0241202de1349422af4260296.zip
[PKT_SCHED] netem: Orphan SKB when adding to queue.
The networking emulator can queue SKBs for a very long time, so if you're using netem on the sender side for large bandwidth/delay product testing, the SKB socket send queue sizes become artificially larger. Correct this by calling skb_orphan() in netem_enqueue(). Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_netem.c')
-rw-r--r--net/sched/sch_netem.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c
index 45939bafbdf8..ef8874babf6a 100644
--- a/net/sched/sch_netem.c
+++ b/net/sched/sch_netem.c
@@ -170,6 +170,8 @@ static int netem_enqueue(struct sk_buff *skb, struct Qdisc *sch)
return NET_XMIT_BYPASS;
}
+ skb_orphan(skb);
+
/*
* If we need to duplicate packet, then re-insert at top of the
* qdisc tree, since parent queuer expects that only one