On Thu, 2012-06-07 at 18:03 +0200, Michael Büsch wrote:
> > > mac80211: fix single queue drivers
> >
> > Just checked again, that commit was already part of my tree, so I
> > still run into this issue.
> >
> > A couple of printk()'s report that local->hw.queues is 4 in
> > ieee80211_set_default_queues() while n_queues in
> > ieee80211_check_queues() is 1...
>
> b43 messes with the queue count at runtime. I guess that's the reason.
Oh, right, I forgot all about that, bugger. That would seem to be the
reason since setting it to 4 initially will create the mapping 0->0,
1->1, 2->2, 3->3 and then if it's 1 later, the expected mapping would be
0,1,2,3->0 instead.
> I don't know if this can be fixed now, though. The problem is that we
> first need to load the firmware before we know the queue count.
Yes it can (and I think it should) be: The firmware is now requested
from the probe routines, and b43_request_firmware() only registers with
mac80211 when the firmware has successfully loaded from disk. The only
problem is that b43_request_firmware() doesn't actually bring the core
up before registering since that wasn't necessary until now. It would've
been easier if the firmware packaging contained the flag instead of the
SHM :-)
However, it's also possible to actually *use* the new mac80211 feature.
That would also help with IEEE80211_TX_CTL_SEND_AFTER_DTIM, you could
ask mac80211 to use a separate HW queue for it (for tx_ring_mcast.) This
may be quicker.
johannes
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[Linux Kernel]
[Linux Bluetooth]
[Linux Netdev]
[Kernel Newbies]
[Share Photos]
[IDE]
[Security]
[Git]
[Netfilter]
[Bugtraq]
[Photo]
[Yosemite]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Linux ATA RAID]
[Samba]
[Video 4 Linux]
[Device Mapper]
[Linux Resources]
[Free Dating]
[M2M Wireless]