aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/wme.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/wme.c')
-rw-r--r--net/mac80211/wme.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/net/mac80211/wme.c b/net/mac80211/wme.c
index 5eddf1f32ed9..b1e20ca03ffe 100644
--- a/net/mac80211/wme.c
+++ b/net/mac80211/wme.c
@@ -216,20 +216,15 @@ static int wme_qdiscop_enqueue(struct sk_buff *skb, struct Qdisc* qd)
216 rcu_read_unlock(); 216 rcu_read_unlock();
217 } 217 }
218 218
219 if (unlikely(queue < 0)) { 219 tid = skb->priority & QOS_CONTROL_TAG1D_MASK;
220 kfree_skb(skb); 220 pkt_data->queue = (unsigned int) queue;
221 err = NET_XMIT_DROP; 221 qdisc = q->queues[queue];
222 } else { 222 err = qdisc->enqueue(skb, qdisc);
223 tid = skb->priority & QOS_CONTROL_TAG1D_MASK; 223 if (err == NET_XMIT_SUCCESS) {
224 pkt_data->queue = (unsigned int) queue; 224 qd->q.qlen++;
225 qdisc = q->queues[queue]; 225 qd->bstats.bytes += skb->len;
226 err = qdisc->enqueue(skb, qdisc); 226 qd->bstats.packets++;
227 if (err == NET_XMIT_SUCCESS) { 227 return NET_XMIT_SUCCESS;
228 qd->q.qlen++;
229 qd->bstats.bytes += skb->len;
230 qd->bstats.packets++;
231 return NET_XMIT_SUCCESS;
232 }
233 } 228 }
234 qd->qstats.drops++; 229 qd->qstats.drops++;
235 return err; 230 return err;