[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1216114621.3535.18.camel@johannes.berg>
Date: Tue, 15 Jul 2008 11:37:01 +0200
From: Johannes Berg <johannes@...solutions.net>
To: David Miller <davem@...emloft.net>
Cc: netdev@...r.kernel.org, linux-wireless@...r.kernel.org
Subject: Re: TXQ real_num_tx_queues comments/questions
On Tue, 2008-07-15 at 02:28 -0700, David Miller wrote:
> From: Johannes Berg <johannes@...solutions.net>
> Date: Tue, 15 Jul 2008 11:25:23 +0200
>
> > > It seems to me that a simple synchronize_net() call near the end of
> > > agg queue removal would solve your problem as-is, wouldn't it?
> >
> > Well, as far as I can tell we can't do that there because it's in
> > tasklet context/called under spinlocks so it has to be atomic. I think.
>
> Right, my bad.
Also, I don't actually think it is sufficient since select_queue isn't
called under rcu lock, so even if we synchronize_net() somewhere there
we can still end up not having waited long enough, no?
> It seems that there can end up being holes in the queue
> space on mac80211, which slightly complicates matters.
Yes, but why does it complicate matters? From mac80211's POV it's just
that select_queue must have known about the removed queue when the
requeue is done. And we can defer the requeue to a workqueue.
johannes
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists