]> Pileus Git - ~andy/linux/blobdiff - net/mac80211/ieee80211_sta.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
[~andy/linux] / net / mac80211 / ieee80211_sta.c
index 866eb8078121b08925202569db8e48a0d91194a8..9aeed5320228bfd0e1df34d600c0c725498be7f9 100644 (file)
@@ -1116,9 +1116,10 @@ static void ieee80211_sta_process_addba_request(struct net_device *dev,
        /* prepare reordering buffer */
        tid_agg_rx->reorder_buf =
                kmalloc(buf_size * sizeof(struct sk_buf *), GFP_ATOMIC);
-       if ((!tid_agg_rx->reorder_buf) && net_ratelimit()) {
-               printk(KERN_ERR "can not allocate reordering buffer "
-                                               "to tid %d\n", tid);
+       if (!tid_agg_rx->reorder_buf) {
+               if (net_ratelimit())
+                       printk(KERN_ERR "can not allocate reordering buffer "
+                              "to tid %d\n", tid);
                goto end;
        }
        memset(tid_agg_rx->reorder_buf, 0,
@@ -1154,8 +1155,8 @@ end_no_lock:
        sta_info_put(sta);
 }
 
-void ieee80211_send_delba(struct net_device *dev, const u8 *da, u16 tid,
-                               u16 initiator, u16 reason_code)
+static void ieee80211_send_delba(struct net_device *dev, const u8 *da, u16 tid,
+                                u16 initiator, u16 reason_code)
 {
        struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);
        struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
@@ -1215,9 +1216,6 @@ void ieee80211_sta_stop_rx_ba_session(struct net_device *dev, u8 *ra, u16 tid,
        if (sta->ampdu_mlme.tid_rx[tid].state
                                != HT_AGG_STATE_OPERATIONAL) {
                spin_unlock_bh(&sta->ampdu_mlme.ampdu_rx);
-               if (net_ratelimit())
-                       printk(KERN_DEBUG "rx BA session requested to stop on "
-                               "inactive tid %d\n", tid);
                sta_info_put(sta);
                return;
        }
@@ -2787,6 +2785,7 @@ static int ieee80211_sta_join_ibss(struct net_device *dev,
                               "for IBSS beacon\n", dev->name);
                        break;
                }
+               control.vif = &sdata->vif;
                control.tx_rate =
                        (sdata->bss_conf.use_short_preamble &&
                        (ratesel.rate->flags & IEEE80211_RATE_PREAMBLE2)) ?