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

+80 -81
+17 -6
drivers/net/wireless/ath5k/base.c
··· 251 return; 252 pci_unmap_single(sc->pdev, bf->skbaddr, bf->skb->len, 253 PCI_DMA_TODEVICE); 254 - dev_kfree_skb(bf->skb); 255 bf->skb = NULL; 256 } 257 ··· 466 mutex_init(&sc->lock); 467 spin_lock_init(&sc->rxbuflock); 468 spin_lock_init(&sc->txbuflock); 469 470 /* Set private data */ 471 pci_set_drvdata(pdev, hw); ··· 2180 2181 sc->imask |= AR5K_INT_SWBA; 2182 2183 - if (ath5k_hw_hasveol(ah)) 2184 ath5k_beacon_send(sc); 2185 } 2186 /* TODO else AP */ 2187 ··· 2407 TSF_TO_TU(tsf), 2408 (unsigned long long) tsf); 2409 } else { 2410 ath5k_beacon_send(sc); 2411 } 2412 } 2413 if (status & AR5K_INT_RXEOL) { ··· 2751 ret = -EOPNOTSUPP; 2752 goto end; 2753 } 2754 ret = 0; 2755 end: 2756 mutex_unlock(&sc->lock); ··· 2800 struct ath5k_hw *ah = sc->ah; 2801 int ret; 2802 2803 - /* Set to a reasonable value. Note that this will 2804 - * be set to mac80211's value at ath5k_config(). */ 2805 - sc->bintval = 1000; 2806 mutex_lock(&sc->lock); 2807 if (sc->vif != vif) { 2808 ret = -EIO; ··· 3058 ath5k_beacon_update(struct ieee80211_hw *hw, struct sk_buff *skb) 3059 { 3060 struct ath5k_softc *sc = hw->priv; 3061 int ret; 3062 3063 ath5k_debug_dump_skb(sc, skb, "BC ", 1); ··· 3068 goto end; 3069 } 3070 3071 ath5k_txbuf_free(sc, sc->bbuf); 3072 sc->bbuf->skb = skb; 3073 ret = ath5k_beacon_setup(sc, sc->bbuf); 3074 if (ret) 3075 sc->bbuf->skb = NULL; 3076 - else { 3077 ath5k_beacon_config(sc); 3078 mmiowb(); 3079 }
··· 251 return; 252 pci_unmap_single(sc->pdev, bf->skbaddr, bf->skb->len, 253 PCI_DMA_TODEVICE); 254 + dev_kfree_skb_any(bf->skb); 255 bf->skb = NULL; 256 } 257 ··· 466 mutex_init(&sc->lock); 467 spin_lock_init(&sc->rxbuflock); 468 spin_lock_init(&sc->txbuflock); 469 + spin_lock_init(&sc->block); 470 471 /* Set private data */ 472 pci_set_drvdata(pdev, hw); ··· 2179 2180 sc->imask |= AR5K_INT_SWBA; 2181 2182 + if (ath5k_hw_hasveol(ah)) { 2183 + spin_lock(&sc->block); 2184 ath5k_beacon_send(sc); 2185 + spin_unlock(&sc->block); 2186 + } 2187 } 2188 /* TODO else AP */ 2189 ··· 2403 TSF_TO_TU(tsf), 2404 (unsigned long long) tsf); 2405 } else { 2406 + spin_lock(&sc->block); 2407 ath5k_beacon_send(sc); 2408 + spin_unlock(&sc->block); 2409 } 2410 } 2411 if (status & AR5K_INT_RXEOL) { ··· 2745 ret = -EOPNOTSUPP; 2746 goto end; 2747 } 2748 + 2749 + /* Set to a reasonable value. Note that this will 2750 + * be set to mac80211's value at ath5k_config(). */ 2751 + sc->bintval = 1000; 2752 + 2753 ret = 0; 2754 end: 2755 mutex_unlock(&sc->lock); ··· 2789 struct ath5k_hw *ah = sc->ah; 2790 int ret; 2791 2792 mutex_lock(&sc->lock); 2793 if (sc->vif != vif) { 2794 ret = -EIO; ··· 3050 ath5k_beacon_update(struct ieee80211_hw *hw, struct sk_buff *skb) 3051 { 3052 struct ath5k_softc *sc = hw->priv; 3053 + unsigned long flags; 3054 int ret; 3055 3056 ath5k_debug_dump_skb(sc, skb, "BC ", 1); ··· 3059 goto end; 3060 } 3061 3062 + spin_lock_irqsave(&sc->block, flags); 3063 ath5k_txbuf_free(sc, sc->bbuf); 3064 sc->bbuf->skb = skb; 3065 ret = ath5k_beacon_setup(sc, sc->bbuf); 3066 if (ret) 3067 sc->bbuf->skb = NULL; 3068 + spin_unlock_irqrestore(&sc->block, flags); 3069 + if (!ret) { 3070 ath5k_beacon_config(sc); 3071 mmiowb(); 3072 }
+1
drivers/net/wireless/ath5k/base.h
··· 172 struct tasklet_struct txtq; /* tx intr tasklet */ 173 struct ath5k_led tx_led; /* tx led */ 174 175 struct ath5k_buf *bbuf; /* beacon buffer */ 176 unsigned int bhalq, /* SW q for outgoing beacons */ 177 bmisscount, /* missed beacon transmits */
··· 172 struct tasklet_struct txtq; /* tx intr tasklet */ 173 struct ath5k_led tx_led; /* tx led */ 174 175 + spinlock_t block; /* protects beacon */ 176 struct ath5k_buf *bbuf; /* beacon buffer */ 177 unsigned int bhalq, /* SW q for outgoing beacons */ 178 bmisscount, /* missed beacon transmits */
+31 -20
drivers/net/wireless/atmel.c
··· 1304 int atmel_open(struct net_device *dev) 1305 { 1306 struct atmel_private *priv = netdev_priv(dev); 1307 - int i, channel; 1308 1309 /* any scheduled timer is no longer needed and might screw things up.. */ 1310 del_timer_sync(&priv->management_timer); ··· 1328 priv->site_survey_state = SITE_SURVEY_IDLE; 1329 priv->station_is_associated = 0; 1330 1331 - if (!reset_atmel_card(dev)) 1332 - return -EAGAIN; 1333 1334 if (priv->config_reg_domain) { 1335 priv->reg_domain = priv->config_reg_domain; ··· 3062 } 3063 3064 if (status == WLAN_STATUS_NOT_SUPPORTED_AUTH_ALG) { 3065 - /* Do opensystem first, then try sharedkey */ 3066 if (system == WLAN_AUTH_OPEN) { 3067 priv->CurrentAuthentTransactionSeqNum = 0x001; 3068 priv->exclude_unencrypted = 1; 3069 send_authentication_request(priv, WLAN_AUTH_SHARED_KEY, NULL, 0); 3070 return; 3071 } else if (priv->connect_to_any_BSS) { 3072 int bss_index; ··· 3589 3590 if (i == 0) { 3591 printk(KERN_ALERT "%s: MAC failed to boot.\n", priv->dev->name); 3592 - return 0; 3593 } 3594 3595 if ((priv->host_info_base = atmel_read16(priv->dev, MR2)) == 0xffff) { 3596 printk(KERN_ALERT "%s: card missing.\n", priv->dev->name); 3597 - return 0; 3598 } 3599 3600 /* now check for completion of MAC initialization through ··· 3618 if (i == 0) { 3619 printk(KERN_ALERT "%s: MAC failed to initialise.\n", 3620 priv->dev->name); 3621 - return 0; 3622 } 3623 3624 /* Check for MAC_INIT_OK only on the register that the MAC_INIT_OK was set */ 3625 if ((mr3 & MAC_INIT_COMPLETE) && 3626 !(atmel_read16(priv->dev, MR3) & MAC_INIT_OK)) { 3627 printk(KERN_ALERT "%s: MAC failed MR3 self-test.\n", priv->dev->name); 3628 - return 0; 3629 } 3630 if ((mr1 & MAC_INIT_COMPLETE) && 3631 !(atmel_read16(priv->dev, MR1) & MAC_INIT_OK)) { 3632 printk(KERN_ALERT "%s: MAC failed MR1 self-test.\n", priv->dev->name); 3633 - return 0; 3634 } 3635 3636 atmel_copy_to_host(priv->dev, (unsigned char *)iface, ··· 3651 iface->func_ctrl = le16_to_cpu(iface->func_ctrl); 3652 iface->mac_status = le16_to_cpu(iface->mac_status); 3653 3654 - return 1; 3655 } 3656 3657 /* determine type of memory and MAC address */ ··· 3702 /* Standard firmware in flash, boot it up and ask 3703 for the Mac Address */ 3704 priv->card_type = CARD_TYPE_SPI_FLASH; 3705 - if (atmel_wakeup_firmware(priv)) { 3706 atmel_get_mib(priv, Mac_Address_Mib_Type, 0, dev->dev_addr, 6); 3707 3708 /* got address, now squash it again until the network ··· 3844 struct atmel_private *priv = netdev_priv(dev); 3845 u8 configuration; 3846 int old_state = priv->station_state; 3847 3848 /* data to add to the firmware names, in priority order 3849 this implemenents firmware versioning */ ··· 3878 dev->name); 3879 strcpy(priv->firmware_id, "atmel_at76c502.bin"); 3880 } 3881 - if (request_firmware(&fw_entry, priv->firmware_id, priv->sys_dev) != 0) { 3882 printk(KERN_ALERT 3883 "%s: firmware %s is missing, cannot continue.\n", 3884 dev->name, priv->firmware_id); 3885 - return 0; 3886 } 3887 } else { 3888 int fw_index = 0; ··· 3912 "%s: firmware %s is missing, cannot start.\n", 3913 dev->name, priv->firmware_id); 3914 priv->firmware_id[0] = '\0'; 3915 - return 0; 3916 } 3917 } 3918 ··· 3937 release_firmware(fw_entry); 3938 } 3939 3940 - if (!atmel_wakeup_firmware(priv)) 3941 - return 0; 3942 3943 /* Check the version and set the correct flag for wpa stuff, 3944 old and new firmware is incompatible. ··· 3980 if (!priv->radio_on_broken) { 3981 if (atmel_send_command_wait(priv, CMD_EnableRadio, NULL, 0) == 3982 CMD_STATUS_REJECTED_RADIO_OFF) { 3983 - printk(KERN_INFO 3984 - "%s: cannot turn the radio on. (Hey radio, you're beautiful!)\n", 3985 dev->name); 3986 - return 0; 3987 } 3988 } 3989 ··· 4017 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL); 4018 } 4019 4020 - return 1; 4021 } 4022 4023 static void atmel_send_command(struct atmel_private *priv, int command,
··· 1304 int atmel_open(struct net_device *dev) 1305 { 1306 struct atmel_private *priv = netdev_priv(dev); 1307 + int i, channel, err; 1308 1309 /* any scheduled timer is no longer needed and might screw things up.. */ 1310 del_timer_sync(&priv->management_timer); ··· 1328 priv->site_survey_state = SITE_SURVEY_IDLE; 1329 priv->station_is_associated = 0; 1330 1331 + err = reset_atmel_card(dev); 1332 + if (err) 1333 + return err; 1334 1335 if (priv->config_reg_domain) { 1336 priv->reg_domain = priv->config_reg_domain; ··· 3061 } 3062 3063 if (status == WLAN_STATUS_NOT_SUPPORTED_AUTH_ALG) { 3064 + /* Flip back and forth between WEP auth modes until the max 3065 + * authentication tries has been exceeded. 3066 + */ 3067 if (system == WLAN_AUTH_OPEN) { 3068 priv->CurrentAuthentTransactionSeqNum = 0x001; 3069 priv->exclude_unencrypted = 1; 3070 send_authentication_request(priv, WLAN_AUTH_SHARED_KEY, NULL, 0); 3071 + return; 3072 + } else if ( system == WLAN_AUTH_SHARED_KEY 3073 + && priv->wep_is_on) { 3074 + priv->CurrentAuthentTransactionSeqNum = 0x001; 3075 + priv->exclude_unencrypted = 0; 3076 + send_authentication_request(priv, WLAN_AUTH_OPEN, NULL, 0); 3077 return; 3078 } else if (priv->connect_to_any_BSS) { 3079 int bss_index; ··· 3580 3581 if (i == 0) { 3582 printk(KERN_ALERT "%s: MAC failed to boot.\n", priv->dev->name); 3583 + return -EIO; 3584 } 3585 3586 if ((priv->host_info_base = atmel_read16(priv->dev, MR2)) == 0xffff) { 3587 printk(KERN_ALERT "%s: card missing.\n", priv->dev->name); 3588 + return -ENODEV; 3589 } 3590 3591 /* now check for completion of MAC initialization through ··· 3609 if (i == 0) { 3610 printk(KERN_ALERT "%s: MAC failed to initialise.\n", 3611 priv->dev->name); 3612 + return -EIO; 3613 } 3614 3615 /* Check for MAC_INIT_OK only on the register that the MAC_INIT_OK was set */ 3616 if ((mr3 & MAC_INIT_COMPLETE) && 3617 !(atmel_read16(priv->dev, MR3) & MAC_INIT_OK)) { 3618 printk(KERN_ALERT "%s: MAC failed MR3 self-test.\n", priv->dev->name); 3619 + return -EIO; 3620 } 3621 if ((mr1 & MAC_INIT_COMPLETE) && 3622 !(atmel_read16(priv->dev, MR1) & MAC_INIT_OK)) { 3623 printk(KERN_ALERT "%s: MAC failed MR1 self-test.\n", priv->dev->name); 3624 + return -EIO; 3625 } 3626 3627 atmel_copy_to_host(priv->dev, (unsigned char *)iface, ··· 3642 iface->func_ctrl = le16_to_cpu(iface->func_ctrl); 3643 iface->mac_status = le16_to_cpu(iface->mac_status); 3644 3645 + return 0; 3646 } 3647 3648 /* determine type of memory and MAC address */ ··· 3693 /* Standard firmware in flash, boot it up and ask 3694 for the Mac Address */ 3695 priv->card_type = CARD_TYPE_SPI_FLASH; 3696 + if (atmel_wakeup_firmware(priv) == 0) { 3697 atmel_get_mib(priv, Mac_Address_Mib_Type, 0, dev->dev_addr, 6); 3698 3699 /* got address, now squash it again until the network ··· 3835 struct atmel_private *priv = netdev_priv(dev); 3836 u8 configuration; 3837 int old_state = priv->station_state; 3838 + int err = 0; 3839 3840 /* data to add to the firmware names, in priority order 3841 this implemenents firmware versioning */ ··· 3868 dev->name); 3869 strcpy(priv->firmware_id, "atmel_at76c502.bin"); 3870 } 3871 + err = request_firmware(&fw_entry, priv->firmware_id, priv->sys_dev); 3872 + if (err != 0) { 3873 printk(KERN_ALERT 3874 "%s: firmware %s is missing, cannot continue.\n", 3875 dev->name, priv->firmware_id); 3876 + return err; 3877 } 3878 } else { 3879 int fw_index = 0; ··· 3901 "%s: firmware %s is missing, cannot start.\n", 3902 dev->name, priv->firmware_id); 3903 priv->firmware_id[0] = '\0'; 3904 + return -ENOENT; 3905 } 3906 } 3907 ··· 3926 release_firmware(fw_entry); 3927 } 3928 3929 + err = atmel_wakeup_firmware(priv); 3930 + if (err != 0) 3931 + return err; 3932 3933 /* Check the version and set the correct flag for wpa stuff, 3934 old and new firmware is incompatible. ··· 3968 if (!priv->radio_on_broken) { 3969 if (atmel_send_command_wait(priv, CMD_EnableRadio, NULL, 0) == 3970 CMD_STATUS_REJECTED_RADIO_OFF) { 3971 + printk(KERN_INFO "%s: cannot turn the radio on.\n", 3972 dev->name); 3973 + return -EIO; 3974 } 3975 } 3976 ··· 4006 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL); 4007 } 4008 4009 + return 0; 4010 } 4011 4012 static void atmel_send_command(struct atmel_private *priv, int command,
+12 -12
net/mac80211/debugfs_netdev.c
··· 248 static void add_sta_files(struct ieee80211_sub_if_data *sdata) 249 { 250 DEBUGFS_ADD(drop_unencrypted, sta); 251 - DEBUGFS_ADD(force_unicast_rateidx, ap); 252 - DEBUGFS_ADD(max_ratectrl_rateidx, ap); 253 254 DEBUGFS_ADD(state, sta); 255 DEBUGFS_ADD(bssid, sta); ··· 283 static void add_wds_files(struct ieee80211_sub_if_data *sdata) 284 { 285 DEBUGFS_ADD(drop_unencrypted, wds); 286 - DEBUGFS_ADD(force_unicast_rateidx, ap); 287 - DEBUGFS_ADD(max_ratectrl_rateidx, ap); 288 289 DEBUGFS_ADD(peer, wds); 290 } ··· 292 static void add_vlan_files(struct ieee80211_sub_if_data *sdata) 293 { 294 DEBUGFS_ADD(drop_unencrypted, vlan); 295 - DEBUGFS_ADD(force_unicast_rateidx, ap); 296 - DEBUGFS_ADD(max_ratectrl_rateidx, ap); 297 } 298 299 static void add_monitor_files(struct ieee80211_sub_if_data *sdata) ··· 381 static void del_sta_files(struct ieee80211_sub_if_data *sdata) 382 { 383 DEBUGFS_DEL(drop_unencrypted, sta); 384 - DEBUGFS_DEL(force_unicast_rateidx, ap); 385 - DEBUGFS_DEL(max_ratectrl_rateidx, ap); 386 387 DEBUGFS_DEL(state, sta); 388 DEBUGFS_DEL(bssid, sta); ··· 416 static void del_wds_files(struct ieee80211_sub_if_data *sdata) 417 { 418 DEBUGFS_DEL(drop_unencrypted, wds); 419 - DEBUGFS_DEL(force_unicast_rateidx, ap); 420 - DEBUGFS_DEL(max_ratectrl_rateidx, ap); 421 422 DEBUGFS_DEL(peer, wds); 423 } ··· 425 static void del_vlan_files(struct ieee80211_sub_if_data *sdata) 426 { 427 DEBUGFS_DEL(drop_unencrypted, vlan); 428 - DEBUGFS_DEL(force_unicast_rateidx, ap); 429 - DEBUGFS_DEL(max_ratectrl_rateidx, ap); 430 } 431 432 static void del_monitor_files(struct ieee80211_sub_if_data *sdata)
··· 248 static void add_sta_files(struct ieee80211_sub_if_data *sdata) 249 { 250 DEBUGFS_ADD(drop_unencrypted, sta); 251 + DEBUGFS_ADD(force_unicast_rateidx, sta); 252 + DEBUGFS_ADD(max_ratectrl_rateidx, sta); 253 254 DEBUGFS_ADD(state, sta); 255 DEBUGFS_ADD(bssid, sta); ··· 283 static void add_wds_files(struct ieee80211_sub_if_data *sdata) 284 { 285 DEBUGFS_ADD(drop_unencrypted, wds); 286 + DEBUGFS_ADD(force_unicast_rateidx, wds); 287 + DEBUGFS_ADD(max_ratectrl_rateidx, wds); 288 289 DEBUGFS_ADD(peer, wds); 290 } ··· 292 static void add_vlan_files(struct ieee80211_sub_if_data *sdata) 293 { 294 DEBUGFS_ADD(drop_unencrypted, vlan); 295 + DEBUGFS_ADD(force_unicast_rateidx, vlan); 296 + DEBUGFS_ADD(max_ratectrl_rateidx, vlan); 297 } 298 299 static void add_monitor_files(struct ieee80211_sub_if_data *sdata) ··· 381 static void del_sta_files(struct ieee80211_sub_if_data *sdata) 382 { 383 DEBUGFS_DEL(drop_unencrypted, sta); 384 + DEBUGFS_DEL(force_unicast_rateidx, sta); 385 + DEBUGFS_DEL(max_ratectrl_rateidx, sta); 386 387 DEBUGFS_DEL(state, sta); 388 DEBUGFS_DEL(bssid, sta); ··· 416 static void del_wds_files(struct ieee80211_sub_if_data *sdata) 417 { 418 DEBUGFS_DEL(drop_unencrypted, wds); 419 + DEBUGFS_DEL(force_unicast_rateidx, wds); 420 + DEBUGFS_DEL(max_ratectrl_rateidx, wds); 421 422 DEBUGFS_DEL(peer, wds); 423 } ··· 425 static void del_vlan_files(struct ieee80211_sub_if_data *sdata) 426 { 427 DEBUGFS_DEL(drop_unencrypted, vlan); 428 + DEBUGFS_DEL(force_unicast_rateidx, vlan); 429 + DEBUGFS_DEL(max_ratectrl_rateidx, vlan); 430 } 431 432 static void del_monitor_files(struct ieee80211_sub_if_data *sdata)
+6
net/mac80211/ieee80211_i.h
··· 470 struct dentry *auth_transaction; 471 struct dentry *flags; 472 struct dentry *num_beacons_sta; 473 } sta; 474 struct { 475 struct dentry *drop_unencrypted; ··· 485 struct { 486 struct dentry *drop_unencrypted; 487 struct dentry *peer; 488 } wds; 489 struct { 490 struct dentry *drop_unencrypted; 491 } vlan; 492 struct { 493 struct dentry *mode;
··· 470 struct dentry *auth_transaction; 471 struct dentry *flags; 472 struct dentry *num_beacons_sta; 473 + struct dentry *force_unicast_rateidx; 474 + struct dentry *max_ratectrl_rateidx; 475 } sta; 476 struct { 477 struct dentry *drop_unencrypted; ··· 483 struct { 484 struct dentry *drop_unencrypted; 485 struct dentry *peer; 486 + struct dentry *force_unicast_rateidx; 487 + struct dentry *max_ratectrl_rateidx; 488 } wds; 489 struct { 490 struct dentry *drop_unencrypted; 491 + struct dentry *force_unicast_rateidx; 492 + struct dentry *max_ratectrl_rateidx; 493 } vlan; 494 struct { 495 struct dentry *mode;
+1 -1
net/mac80211/mesh.c
··· 383 hlist_for_each_safe(p, q, &newtbl->hash_buckets[i]) 384 tbl->free_node(p, 0); 385 } 386 - __mesh_table_free(tbl); 387 endgrow: 388 return NULL; 389 }
··· 383 hlist_for_each_safe(p, q, &newtbl->hash_buckets[i]) 384 tbl->free_node(p, 0); 385 } 386 + __mesh_table_free(newtbl); 387 endgrow: 388 return NULL; 389 }
+11 -41
net/mac80211/mlme.c
··· 478 static void ieee80211_sta_send_associnfo(struct net_device *dev, 479 struct ieee80211_if_sta *ifsta) 480 { 481 - char *buf; 482 - size_t len; 483 - int i; 484 union iwreq_data wrqu; 485 486 - if (!ifsta->assocreq_ies && !ifsta->assocresp_ies) 487 - return; 488 - 489 - buf = kmalloc(50 + 2 * (ifsta->assocreq_ies_len + 490 - ifsta->assocresp_ies_len), GFP_KERNEL); 491 - if (!buf) 492 - return; 493 - 494 - len = sprintf(buf, "ASSOCINFO("); 495 if (ifsta->assocreq_ies) { 496 - len += sprintf(buf + len, "ReqIEs="); 497 - for (i = 0; i < ifsta->assocreq_ies_len; i++) { 498 - len += sprintf(buf + len, "%02x", 499 - ifsta->assocreq_ies[i]); 500 - } 501 } 502 if (ifsta->assocresp_ies) { 503 - if (ifsta->assocreq_ies) 504 - len += sprintf(buf + len, " "); 505 - len += sprintf(buf + len, "RespIEs="); 506 - for (i = 0; i < ifsta->assocresp_ies_len; i++) { 507 - len += sprintf(buf + len, "%02x", 508 - ifsta->assocresp_ies[i]); 509 - } 510 } 511 - len += sprintf(buf + len, ")"); 512 - 513 - if (len > IW_CUSTOM_MAX) { 514 - len = sprintf(buf, "ASSOCRESPIE="); 515 - for (i = 0; i < ifsta->assocresp_ies_len; i++) { 516 - len += sprintf(buf + len, "%02x", 517 - ifsta->assocresp_ies[i]); 518 - } 519 - } 520 - 521 - memset(&wrqu, 0, sizeof(wrqu)); 522 - wrqu.data.length = len; 523 - wireless_send_event(dev, IWEVCUSTOM, &wrqu, buf); 524 - 525 - kfree(buf); 526 } 527 528 ··· 783 } 784 } 785 786 - if (count == 8) { 787 pos = skb_put(skb, rates_len - count + 2); 788 *pos++ = WLAN_EID_EXT_SUPP_RATES; 789 *pos++ = rates_len - count; ··· 2838 jiffies); 2839 #endif /* CONFIG_MAC80211_IBSS_DEBUG */ 2840 if (beacon_timestamp > rx_timestamp) { 2841 - #ifndef CONFIG_MAC80211_IBSS_DEBUG 2842 printk(KERN_DEBUG "%s: beacon TSF higher than " 2843 "local TSF - IBSS merge with BSSID %s\n", 2844 dev->name, print_mac(mac, mgmt->bssid));
··· 478 static void ieee80211_sta_send_associnfo(struct net_device *dev, 479 struct ieee80211_if_sta *ifsta) 480 { 481 union iwreq_data wrqu; 482 483 if (ifsta->assocreq_ies) { 484 + memset(&wrqu, 0, sizeof(wrqu)); 485 + wrqu.data.length = ifsta->assocreq_ies_len; 486 + wireless_send_event(dev, IWEVASSOCREQIE, &wrqu, 487 + ifsta->assocreq_ies); 488 } 489 + 490 if (ifsta->assocresp_ies) { 491 + memset(&wrqu, 0, sizeof(wrqu)); 492 + wrqu.data.length = ifsta->assocresp_ies_len; 493 + wireless_send_event(dev, IWEVASSOCRESPIE, &wrqu, 494 + ifsta->assocresp_ies); 495 } 496 } 497 498 ··· 813 } 814 } 815 816 + if (rates_len > count) { 817 pos = skb_put(skb, rates_len - count + 2); 818 *pos++ = WLAN_EID_EXT_SUPP_RATES; 819 *pos++ = rates_len - count; ··· 2868 jiffies); 2869 #endif /* CONFIG_MAC80211_IBSS_DEBUG */ 2870 if (beacon_timestamp > rx_timestamp) { 2871 + #ifdef CONFIG_MAC80211_IBSS_DEBUG 2872 printk(KERN_DEBUG "%s: beacon TSF higher than " 2873 "local TSF - IBSS merge with BSSID %s\n", 2874 dev->name, print_mac(mac, mgmt->bssid));
+1 -1
net/rfkill/rfkill.c
··· 377 { 378 struct rfkill *rfkill = to_rfkill(dev); 379 380 - return sprintf(buf, "%d", rfkill->user_claim); 381 } 382 383 static ssize_t rfkill_claim_store(struct device *dev,
··· 377 { 378 struct rfkill *rfkill = to_rfkill(dev); 379 380 + return sprintf(buf, "%d\n", rfkill->user_claim); 381 } 382 383 static ssize_t rfkill_claim_store(struct device *dev,