Merge branch 'mac80211-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6

This commit is contained in:
David S. Miller 2007-06-12 14:12:49 -07:00
commit 9cadcd28f0
3 changed files with 14 additions and 2 deletions

View File

@ -112,7 +112,7 @@ DEBUGFS_READONLY_FILE(wep_iv, 20, "%#06x",
local->wep_iv & 0xffffff); local->wep_iv & 0xffffff);
DEBUGFS_READONLY_FILE(tx_power_reduction, 20, "%d.%d dBm", DEBUGFS_READONLY_FILE(tx_power_reduction, 20, "%d.%d dBm",
local->hw.conf.tx_power_reduction / 10, local->hw.conf.tx_power_reduction / 10,
local->hw.conf.tx_power_reduction & 10); local->hw.conf.tx_power_reduction % 10);
DEBUGFS_READONLY_FILE(rate_ctrl_alg, 100, "%s", DEBUGFS_READONLY_FILE(rate_ctrl_alg, 100, "%s",
local->rate_ctrl ? local->rate_ctrl->ops->name : "<unset>"); local->rate_ctrl ? local->rate_ctrl->ops->name : "<unset>");

View File

@ -2592,11 +2592,17 @@ void ieee80211_scan_completed(struct ieee80211_hw *hw)
read_lock(&local->sub_if_lock); read_lock(&local->sub_if_lock);
list_for_each_entry(sdata, &local->sub_if_list, list) { list_for_each_entry(sdata, &local->sub_if_list, list) {
/* No need to wake the master device. */
if (sdata->dev == local->mdev)
continue;
if (sdata->type == IEEE80211_IF_TYPE_STA) { if (sdata->type == IEEE80211_IF_TYPE_STA) {
if (sdata->u.sta.associated) if (sdata->u.sta.associated)
ieee80211_send_nullfunc(local, sdata, 0); ieee80211_send_nullfunc(local, sdata, 0);
ieee80211_sta_timer((unsigned long)sdata); ieee80211_sta_timer((unsigned long)sdata);
} }
netif_wake_queue(sdata->dev); netif_wake_queue(sdata->dev);
} }
read_unlock(&local->sub_if_lock); read_unlock(&local->sub_if_lock);
@ -2738,6 +2744,12 @@ static int ieee80211_sta_start_scan(struct net_device *dev,
read_lock(&local->sub_if_lock); read_lock(&local->sub_if_lock);
list_for_each_entry(sdata, &local->sub_if_list, list) { list_for_each_entry(sdata, &local->sub_if_list, list) {
/* Don't stop the master interface, otherwise we can't transmit
* probes! */
if (sdata->dev == local->mdev)
continue;
netif_stop_queue(sdata->dev); netif_stop_queue(sdata->dev);
if (sdata->type == IEEE80211_IF_TYPE_STA && if (sdata->type == IEEE80211_IF_TYPE_STA &&
sdata->u.sta.associated) sdata->u.sta.associated)

View File

@ -33,7 +33,7 @@ static ssize_t _show_permaddr(struct device *dev,
struct device_attribute *attr, struct device_attribute *attr,
char *buf) char *buf)
{ {
char *addr = dev_to_rdev(dev)->wiphy.perm_addr; unsigned char *addr = dev_to_rdev(dev)->wiphy.perm_addr;
return sprintf(buf, "%.2x:%.2x:%.2x:%.2x:%.2x:%.2x\n", return sprintf(buf, "%.2x:%.2x:%.2x:%.2x:%.2x:%.2x\n",
addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);