Search Linux Wireless

Re: [PATCH v3] mac80211: Retry null data frame for power save.

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

 



On Mon, 2010-02-08 at 17:47 +0530, Vivek Natarajan wrote:

> diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
> index 3067fbd..f50a17a 100644
> --- a/net/mac80211/ieee80211_i.h
> +++ b/net/mac80211/ieee80211_i.h
> @@ -316,6 +316,7 @@ enum ieee80211_sta_flags {
>  	IEEE80211_STA_CSA_RECEIVED	= BIT(5),
>  	IEEE80211_STA_MFP_ENABLED	= BIT(6),
>  	IEEE80211_STA_UAPSD_ENABLED	= BIT(7),
> +	IEEE80211_STA_NULLFUNC_ACKED	= BIT(8),

Good idea :)

> +	if (ieee80211_is_nullfunc(fc) && ieee80211_has_pm(fc) &&
> +		(local->hw.flags & IEEE80211_HW_TX_STATUS) &&
> +		local->ps_sdata && !(local->scanning)) {
> +		if (info->flags & IEEE80211_TX_STAT_ACK) {
> +			local->ps_sdata->u.mgd.flags |=
> +					IEEE80211_STA_NULLFUNC_ACKED;
> +			ieee80211_queue_work(&local->hw,
> +					 &local->dynamic_ps_enable_work);
> +		} else
> +			mod_timer(&local->dynamic_ps_timer, jiffies +
> +					msecs_to_jiffies(10));
> +	}

I think this needs to check against injected frames as well [and
personally, I'd prefer if you only indented the stuff belonging into the
first if by 4 spaces to match up with the "if ("].

Also, you're still missing documentation on IEEE80211_HW_TX_STATUS.

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