Search Linux Wireless

Re: [PATCH] mac80211: Update stop_queues kdoc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Michael Wu wrote:
On Friday 01 June 2007 09:58, James Ketrenos wrote:
In this way we are putting in a work around that doesn't result in an API
change, and that can eventually (hopefully) be fixed the "right way"
(whatever that may end up being)

A workaround could be implemented, but I currently don't see any cases where stopping/waking the queue outside of open/stop/tx is necessary or correct.

Is calling the ieee80211_stop_queue[s] from open/stop OK then?  The doc update said only in ops->tx.  Should the driver be calling it in the stop callback, or will the stack stop the queues for us?

iwlwifi currently calls ieee80211_stop_queue from the Tx handler and calls ieee80211_stop_queues in the event the adapter is reset (due to HW error, RF kill transition, hw tear down, etc.) as it asynchronously brings re-initializes the hardware.

We definitely need to wake the queue outside of open/stop/tx.  If you stop the queue due to the HW ring being full, you won't be able to wake the queue until the HW has asynchronously freed a Tx slot.

iwlwifi calls ieee80211_wake_queue during buffer reclaiming after the HW indicates the Tx has completed.
James

(in bcm43xx, stopping the tx rings is more correct and effective for what is being done there - stopping TX so the radio can be recalibrated)

-Michael Wu
-
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux