Use qdisc_drop() helper where possible.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        }
 
        q->stats.pdrop++;
-       sch->qstats.drops++;
-       kfree_skb(skb);
-       return NET_XMIT_DROP;
+       return qdisc_drop(skb, sch);
 
- congestion_drop:
+congestion_drop:
        qdisc_drop(skb, sch);
        return NET_XMIT_CN;
 
- other_drop:
+other_drop:
        if (ret & __NET_XMIT_BYPASS)
                sch->qstats.drops++;
        kfree_skb(skb);
 
        return NET_XMIT_SUCCESS;
 
 drop:
-       kfree_skb(skb);
-       sch->qstats.drops++;
+       qdisc_drop(skb, sch);
        return NET_XMIT_SUCCESS | __NET_XMIT_BYPASS;
 }
 
 
                        __skb_queue_tail(&q->direct_queue, skb);
                        q->direct_pkts++;
                } else {
-                       kfree_skb(skb);
-                       sch->qstats.drops++;
-                       return NET_XMIT_DROP;
+                       return qdisc_drop(skb, sch);
                }
 #ifdef CONFIG_NET_CLS_ACT
        } else if (!cl) {
 
                return NET_XMIT_SUCCESS;
        }
 
-       kfree_skb(skb);
-       sch->qstats.drops++;
-       return NET_XMIT_DROP;
+       return qdisc_drop(skb, sch);
 }
 
 static struct sk_buff *