Skip to content

Commit

Permalink
mac80211: Reset the power save timer from master_start_xmit.
Browse files Browse the repository at this point in the history
When a null data frame is generated from mac80211,  it goes through
master_start_xmit and not through  subif_start_xmit. Hence for the
power save timer to be triggered while sending this null data frame
also, the timer has to be reset from master_start_xmit.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Vivek Natarajan authored and John W. Linville committed Jan 29, 2009
1 parent eb46936 commit d063ed0
Showing 1 changed file with 13 additions and 13 deletions.
26 changes: 13 additions & 13 deletions net/mac80211/tx.c
Original file line number Diff line number Diff line change
Expand Up @@ -1296,6 +1296,19 @@ int ieee80211_master_start_xmit(struct sk_buff *skb, struct net_device *dev)
return 0;
}

if (!(local->hw.flags & IEEE80211_HW_NO_STACK_DYNAMIC_PS) &&
local->dynamic_ps_timeout > 0) {
if (local->hw.conf.flags & IEEE80211_CONF_PS) {
ieee80211_stop_queues_by_reason(&local->hw,
IEEE80211_QUEUE_STOP_REASON_PS);
queue_work(local->hw.workqueue,
&local->dynamic_ps_disable_work);
}

mod_timer(&local->dynamic_ps_timer, jiffies +
msecs_to_jiffies(local->dynamic_ps_timeout));
}

memset(info, 0, sizeof(*info));

info->flags |= IEEE80211_TX_CTL_REQ_TX_STATUS;
Expand Down Expand Up @@ -1475,19 +1488,6 @@ int ieee80211_subif_start_xmit(struct sk_buff *skb,
goto fail;
}

if (!(local->hw.flags & IEEE80211_HW_NO_STACK_DYNAMIC_PS) &&
local->dynamic_ps_timeout > 0) {
if (local->hw.conf.flags & IEEE80211_CONF_PS) {
ieee80211_stop_queues_by_reason(&local->hw,
IEEE80211_QUEUE_STOP_REASON_PS);
queue_work(local->hw.workqueue,
&local->dynamic_ps_disable_work);
}

mod_timer(&local->dynamic_ps_timer, jiffies +
msecs_to_jiffies(local->dynamic_ps_timeout));
}

nh_pos = skb_network_header(skb) - skb->data;
h_pos = skb_transport_header(skb) - skb->data;

Expand Down

0 comments on commit d063ed0

Please sign in to comment.