aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/dev.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-07-17 03:53:03 -0400
committerDavid S. Miller <davem@davemloft.net>2008-07-17 22:21:30 -0400
commit83874000929ed63aef30b44083a9f713135ff040 (patch)
tree7646fd185751cad8665eca19aa3f87d13c37eade /net/core/dev.c
parentc7e4f3bbb4ba4e48ab3b529d5016e454cee1ccd6 (diff)
pkt_sched: Kill netdev_queue lock.
We can simply use the qdisc->q.lock for all of the qdisc tree synchronization. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/dev.c')
-rw-r--r--net/core/dev.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 6741e344ac59..32a13772c1cb 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -2080,10 +2080,12 @@ static int ing_filter(struct sk_buff *skb)
2080 2080
2081 rxq = &dev->rx_queue; 2081 rxq = &dev->rx_queue;
2082 2082
2083 spin_lock(&rxq->lock); 2083 q = rxq->qdisc;
2084 if ((q = rxq->qdisc) != NULL) 2084 if (q) {
2085 spin_lock(qdisc_lock(q));
2085 result = q->enqueue(skb, q); 2086 result = q->enqueue(skb, q);
2086 spin_unlock(&rxq->lock); 2087 spin_unlock(qdisc_lock(q));
2088 }
2087 2089
2088 return result; 2090 return result;
2089} 2091}
@@ -4173,7 +4175,6 @@ static void netdev_init_one_queue(struct net_device *dev,
4173 struct netdev_queue *queue, 4175 struct netdev_queue *queue,
4174 void *_unused) 4176 void *_unused)
4175{ 4177{
4176 spin_lock_init(&queue->lock);
4177 queue->dev = dev; 4178 queue->dev = dev;
4178} 4179}
4179 4180