projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e1e0918
)
net_sched: Bug in netem reordering
author
Hagen Paul Pfeifer
<
[email protected]
>
Wed, 4 Jan 2012 17:35:26 +0000
(17:35 +0000)
committer
David S. Miller
<
[email protected]
>
Thu, 5 Jan 2012 18:27:39 +0000
(13:27 -0500)
Not now, but it looks you are correct. q->qdisc is NULL until another
additional qdisc is attached (beside tfifo). See
50612537e9ab2969312
.
The following patch should work.
From: Hagen Paul Pfeifer <
[email protected]
>
netem: catch NULL pointer by updating the real qdisc statistic
Reported-by: Vijay Subramanian <
[email protected]
>
Signed-off-by: Hagen Paul Pfeifer <
[email protected]
>
Acked-by: Eric Dumazet <
[email protected]
>
Signed-off-by: David S. Miller <
[email protected]
>
net/sched/sch_netem.c
patch
|
blob
|
history
diff --git
a/net/sched/sch_netem.c
b/net/sched/sch_netem.c
index 06a5cebad3426b67df67c41f39d2275ae8163102..e7e1d0b57b3d2a28d5e99276cd195f7dfde999d0 100644
(file)
--- a/
net/sched/sch_netem.c
+++ b/
net/sched/sch_netem.c
@@
-458,8
+458,8
@@
static int netem_enqueue(struct sk_buff *skb, struct Qdisc *sch)
q->counter = 0;
__skb_queue_head(&sch->q, skb);
-
q->qdisc
->qstats.backlog += qdisc_pkt_len(skb);
-
q->qdisc
->qstats.requeues++;
+
sch
->qstats.backlog += qdisc_pkt_len(skb);
+
sch
->qstats.requeues++;
ret = NET_XMIT_SUCCESS;
}