Search Linux Wireless

Re: [RFC PATCH v4 5/5] mac80211: track master queue status

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

 



On Tue, 2008-12-02 at 22:04 +0200, Kalle Valo wrote:

> +void __ieee80211_stop_queues(struct ieee80211_hw *hw,
> +			     enum queue_stop_reason reason)
>  {
>  	int i;
>  
>  	for (i = 0; i < ieee80211_num_queues(hw); i++)
> -		ieee80211_stop_queue(hw, i);
> +		__ieee80211_stop_queue(hw, i, reason);
> +}
> +
> +void ieee80211_stop_queues(struct ieee80211_hw *hw)
> +{
> +	__ieee80211_stop_queues(hw, IEEE80211_QUEUE_STOP_REASON_DRIVER);
>  }
>  EXPORT_SYMBOL(ieee80211_stop_queues);
>  
> @@ -367,12 +409,18 @@ int ieee80211_queue_stopped(struct ieee80211_hw *hw, int queue)
>  }
>  EXPORT_SYMBOL(ieee80211_queue_stopped);
>  
> -void ieee80211_wake_queues(struct ieee80211_hw *hw)
> +void __ieee80211_wake_queues(struct ieee80211_hw *hw,
> +			     enum queue_stop_reason reason)
>  {
>  	int i;
>  
>  	for (i = 0; i < hw->queues + hw->ampdu_queues; i++)
> -		ieee80211_wake_queue(hw, i);
> +		__ieee80211_wake_queue(hw, i, reason);
> +}
> +
> +void ieee80211_wake_queues(struct ieee80211_hw *hw)
> +{
> +	__ieee80211_wake_queues(hw, IEEE80211_QUEUE_STOP_REASON_DRIVER);
>  }
>  EXPORT_SYMBOL(ieee80211_wake_queues);

I wonder if we should optimise the spinlock here?

Also, I'd prefer to first add this with just a single DRIVER reason
first, and then add the PS patches that add and use the second reason.
Other than that, it looks good to me, thanks!

johannes

Attachment: signature.asc
Description: This is a digitally signed message part


[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