]> Pileus Git - ~andy/linux/blobdiff - net/sched/sch_sfq.c
staging: brcm80211: use address space qualifier in brcmfmac
[~andy/linux] / net / sched / sch_sfq.c
index 4536ee64383e8a6a02a076374ed96b5036df9bd6..4f5510e2bd6f659e85f726a239bb902d96e3c35d 100644 (file)
@@ -410,7 +410,12 @@ sfq_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        /* Return Congestion Notification only if we dropped a packet
         * from this flow.
         */
-       return (qlen != slot->qlen) ? NET_XMIT_CN : NET_XMIT_SUCCESS;
+       if (qlen != slot->qlen)
+               return NET_XMIT_CN;
+
+       /* As we dropped a packet, better let upper stack know this */
+       qdisc_tree_decrease_qlen(sch, 1);
+       return NET_XMIT_SUCCESS;
 }
 
 static struct sk_buff *