[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080716070108.GA4099@ff.dom.local>
Date: Wed, 16 Jul 2008 07:01:08 +0000
From: Jarek Poplawski <jarkao2@...il.com>
To: David Miller <davem@...emloft.net>
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH 1/13]: netdev: Allocate multiple queues for TX.
On 10-07-2008 12:56, David Miller wrote:
...
> diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
> index 243de93..4e2b865 100644
> --- a/net/sched/sch_generic.c
> +++ b/net/sched/sch_generic.c
> @@ -40,20 +40,30 @@
> */
>
> void qdisc_lock_tree(struct net_device *dev)
> - __acquires(dev->tx_queue.lock)
> __acquires(dev->rx_queue.lock)
> {
> - spin_lock_bh(&dev->tx_queue.lock);
> + unsigned int i;
> +
> + local_bh_disable();
> + for (i = 0; i < dev->num_tx_queues; i++) {
> + struct netdev_queue *txq = netdev_get_tx_queue(dev, i);
> + spin_lock(&txq->lock);
I wonder if it was tested with lockdep? It seems additional
annotation is needed for such nesting (not counting rx_queue.lock
annotation).
Jarek P.
> + }
> spin_lock(&dev->rx_queue.lock);
> }
> EXPORT_SYMBOL(qdisc_lock_tree);
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists