Browse Source

net_sched: sch_netem: defer skb freeing

rtnl_kfree_skbs() can be used in tfifo_reset()

It would be nice if we could iterate through rb tree instead
of removing one skb at a time, and build a single skb chain.
But this is left for a future patch.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric Dumazet 9 years ago
parent
commit
2f08a9a162
1 changed files with 1 additions and 3 deletions
  1. 1 3
      net/sched/sch_netem.c

+ 1 - 3
net/sched/sch_netem.c

@@ -368,9 +368,7 @@ static void tfifo_reset(struct Qdisc *sch)
 		struct sk_buff *skb = netem_rb_to_skb(p);
 		struct sk_buff *skb = netem_rb_to_skb(p);
 
 
 		rb_erase(p, &q->t_root);
 		rb_erase(p, &q->t_root);
-		skb->next = NULL;
-		skb->prev = NULL;
-		kfree_skb(skb);
+		rtnl_kfree_skbs(skb, skb);
 	}
 	}
 }
 }