Browse Source

mac80211: Properly set work-item channel-type.

Some were indirectly set to NO_HT (zero), but I think
it's better to explicitly set it in case the enum ever
changes.  In cfg.c, it seems the channel-type was just
ignored (and thus always set to NO_HT).

Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Ben Greear 14 years ago
parent
commit
4d51e149a6
2 changed files with 3 additions and 0 deletions
  1. 1 0
      net/mac80211/cfg.c
  2. 2 0
      net/mac80211/mlme.c

+ 1 - 0
net/mac80211/cfg.c

@@ -1862,6 +1862,7 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct net_device *dev,
 
 
 	wk->type = IEEE80211_WORK_OFFCHANNEL_TX;
 	wk->type = IEEE80211_WORK_OFFCHANNEL_TX;
 	wk->chan = chan;
 	wk->chan = chan;
+	wk->chan_type = channel_type;
 	wk->sdata = sdata;
 	wk->sdata = sdata;
 	wk->done = ieee80211_offchan_tx_done;
 	wk->done = ieee80211_offchan_tx_done;
 	wk->offchan_tx.frame = skb;
 	wk->offchan_tx.frame = skb;

+ 2 - 0
net/mac80211/mlme.c

@@ -2294,6 +2294,7 @@ int ieee80211_mgd_auth(struct ieee80211_sub_if_data *sdata,
 	else
 	else
 		wk->type = IEEE80211_WORK_DIRECT_PROBE;
 		wk->type = IEEE80211_WORK_DIRECT_PROBE;
 	wk->chan = req->bss->channel;
 	wk->chan = req->bss->channel;
+	wk->chan_type = NL80211_CHAN_NO_HT;
 	wk->sdata = sdata;
 	wk->sdata = sdata;
 	wk->done = ieee80211_probe_auth_done;
 	wk->done = ieee80211_probe_auth_done;
 
 
@@ -2443,6 +2444,7 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
 		memcpy(wk->assoc.prev_bssid, req->prev_bssid, ETH_ALEN);
 		memcpy(wk->assoc.prev_bssid, req->prev_bssid, ETH_ALEN);
 
 
 	wk->chan = req->bss->channel;
 	wk->chan = req->bss->channel;
+	wk->chan_type = NL80211_CHAN_NO_HT;
 	wk->sdata = sdata;
 	wk->sdata = sdata;
 	wk->done = ieee80211_assoc_done;
 	wk->done = ieee80211_assoc_done;
 	if (!bss->dtim_period &&
 	if (!bss->dtim_period &&