Skip to content

Commit c8e1812

Browse files
koct9idavem330
authored andcommitted
net_sched: always reset qdisc backlog in qdisc_reset()
SKB stored in qdisc->gso_skb also counted into backlog. Some qdiscs don't reset backlog to zero in ->reset(), for example sfq just dequeue and free all queued skb. Signed-off-by: Konstantin Khlebnikov <[email protected]> Fixes: 2ccccf5 ("net_sched: update hierarchical backlog too") Signed-off-by: David S. Miller <[email protected]>
1 parent 6cc4083 commit c8e1812

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

net/sched/sch_generic.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -685,6 +685,7 @@ void qdisc_reset(struct Qdisc *qdisc)
685685
qdisc->gso_skb = NULL;
686686
}
687687
qdisc->q.qlen = 0;
688+
qdisc->qstats.backlog = 0;
688689
}
689690
EXPORT_SYMBOL(qdisc_reset);
690691

0 commit comments

Comments
 (0)