Search Linux Wireless

Re: [PATCH] mac80211: improve aggregation debug messages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2013-01-16 at 13:43 +0100, Johannes Berg wrote:
> From: Johannes Berg <johannes.berg@xxxxxxxxx>
> 
> A lot of the aggregation messages don't indicate the
> station so they're hard to understand if there are
> multiple sessions in progress. Make that easier by
> adding the MAC address to most messages. Also add
> the TID if it wasn't already there.
> 
> Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
> ---
>  net/mac80211/agg-rx.c | 14 +++++++++-----
>  net/mac80211/agg-tx.c | 44 +++++++++++++++++++++++++++-----------------
>  2 files changed, 36 insertions(+), 22 deletions(-)
> 
> diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c
> index 808338a..31bf258 100644
> --- a/net/mac80211/agg-rx.c
> +++ b/net/mac80211/agg-rx.c
> @@ -83,8 +83,8 @@ void ___ieee80211_stop_rx_ba_session(struct sta_info *sta, u16 tid,
>  	if (drv_ampdu_action(local, sta->sdata, IEEE80211_AMPDU_RX_STOP,
>  			     &sta->sta, tid, NULL, 0))
>  		sdata_info(sta->sdata,
> -			   "HW problem - can not stop rx aggregation for tid %d\n",
> -			   tid);
> +			   "HW problem - can not stop rx aggregation for %pM tid %d\n",
> +			   sta->sta.addr, tid);
>  
>  	/* check if this is a self generated aggregation halt */
>  	if (initiator == WLAN_BACK_RECIPIENT && tx)
> @@ -159,7 +159,8 @@ static void sta_rx_agg_session_timer_expired(unsigned long data)
>  	}
>  	rcu_read_unlock();
>  
> -	ht_dbg(sta->sdata, "rx session timer expired on tid %d\n", (u16)*ptid);
> +	ht_dbg(sta->sdata, "RX session timer expired on %pM tid %d\n",
> +	       sta->sta.addr, (u16)*ptid);
>  
>  	set_bit(*ptid, sta->ampdu_mlme.tid_rx_timer_expired);
>  	ieee80211_queue_work(&sta->local->hw, &sta->ampdu_mlme.work);
> @@ -247,7 +248,9 @@ void ieee80211_process_addba_request(struct ieee80211_local *local,
>  	status = WLAN_STATUS_REQUEST_DECLINED;
>  
>  	if (test_sta_flag(sta, WLAN_STA_BLOCK_BA)) {
> -		ht_dbg(sta->sdata, "Suspend in progress - Denying ADDBA request\n");
> +		ht_dbg(sta->sdata,
> +		       "Suspend in progress - Denying ADDBA request (%pM tid %d)\n",
> +		       sta->sta.addr, tid);
>  		goto end_no_lock;
>  	}
>  
> @@ -317,7 +320,8 @@ void ieee80211_process_addba_request(struct ieee80211_local *local,
>  
>  	ret = drv_ampdu_action(local, sta->sdata, IEEE80211_AMPDU_RX_START,
>  			       &sta->sta, tid, &start_seq_num, 0);
> -	ht_dbg(sta->sdata, "Rx A-MPDU request on tid %d result %d\n", tid, ret);
> +	ht_dbg(sta->sdata, "Rx A-MPDU request on %pM tid %d result %d\n",
> +	       sta->sta.addr, tid, ret);
>  	if (ret) {
>  		kfree(tid_agg_rx->reorder_buf);
>  		kfree(tid_agg_rx->reorder_time);
> diff --git a/net/mac80211/agg-tx.c b/net/mac80211/agg-tx.c
> index 2f0ccbc..e909118 100644
> --- a/net/mac80211/agg-tx.c
> +++ b/net/mac80211/agg-tx.c
> @@ -387,12 +387,13 @@ static void sta_addba_resp_timer_expired(unsigned long data)
>  	    test_bit(HT_AGG_STATE_RESPONSE_RECEIVED, &tid_tx->state)) {
>  		rcu_read_unlock();
>  		ht_dbg(sta->sdata,
> -		       "timer expired on tid %d but we are not (or no longer) expecting addBA response there\n",
> -		       tid);
> +		       "timer expired on %pM tid %d but we are not (or no longer) expecting addBA response there\n",
> +		       sta->sta.addr, tid);
>  		return;
>  	}
>  
> -	ht_dbg(sta->sdata, "addBA response timer expired on tid %d\n", tid);
> +	ht_dbg(sta->sdata, "addBA response timer expired on %pM tid %d\n",
> +	       sta->sta.addr, tid);
>  
>  	ieee80211_stop_tx_ba_session(&sta->sta, tid);
>  	rcu_read_unlock();
> @@ -429,7 +430,8 @@ void ieee80211_tx_ba_session_handle_start(struct sta_info *sta, int tid)
>  			       &sta->sta, tid, &start_seq_num, 0);
>  	if (ret) {
>  		ht_dbg(sdata,
> -		       "BA request denied - HW unavailable for tid %d\n", tid);
> +		       "BA request denied - HW unavailable for %pM tid %d\n",
> +		       sta->sta.addr, tid);
>  		spin_lock_bh(&sta->lock);
>  		ieee80211_agg_splice_packets(sdata, tid_tx, tid);
>  		ieee80211_assign_tid_tx(sta, tid, NULL);
> @@ -442,7 +444,8 @@ void ieee80211_tx_ba_session_handle_start(struct sta_info *sta, int tid)
>  
>  	/* activate the timer for the recipient's addBA response */
>  	mod_timer(&tid_tx->addba_resp_timer, jiffies + ADDBA_RESP_INTERVAL);
> -	ht_dbg(sdata, "activated addBA response timer on tid %d\n", tid);
> +	ht_dbg(sdata, "activated addBA response timer on %pM tid %d\n",
> +	       sta->sta.addr, tid);
>  
>  	spin_lock_bh(&sta->lock);
>  	sta->ampdu_mlme.last_addba_req_time[tid] = jiffies;
> @@ -489,7 +492,8 @@ static void sta_tx_agg_session_timer_expired(unsigned long data)
>  
>  	rcu_read_unlock();
>  
> -	ht_dbg(sta->sdata, "tx session timer expired on tid %d\n", (u16)*ptid);
> +	ht_dbg(sta->sdata, "tx session timer expired on %pM tid %d\n",
> +	       sta->sta.addr, (u16)*ptid);
>  
>  	ieee80211_stop_tx_ba_session(&sta->sta, *ptid);
>  }
> @@ -525,7 +529,8 @@ int ieee80211_start_tx_ba_session(struct ieee80211_sta *pubsta, u16 tid,
>  
>  	if (test_sta_flag(sta, WLAN_STA_BLOCK_BA)) {
>  		ht_dbg(sdata,
> -		       "BA sessions blocked - Denying BA session request\n");
> +		       "BA sessions blocked - Denying BA session request %pM tid %d\n",
> +		       sta->sta.addr, tid);
>  		return -EINVAL;
>  	}
>  
> @@ -566,8 +571,8 @@ int ieee80211_start_tx_ba_session(struct ieee80211_sta *pubsta, u16 tid,
>  	    time_before(jiffies, sta->ampdu_mlme.last_addba_req_time[tid] +
>  			HT_AGG_RETRIES_PERIOD)) {
>  		ht_dbg(sdata,
> -		       "BA request denied - waiting a grace period after %d failed requests on tid %u\n",
> -		       sta->ampdu_mlme.addba_req_num[tid], tid);
> +		       "BA request denied - waiting a grace period after %d failed requests on %pM tid %u\n",
> +		       sta->ampdu_mlme.addba_req_num[tid], sta->sta.addr, tid);
>  		ret = -EBUSY;
>  		goto err_unlock_sta;
>  	}
> @@ -576,8 +581,8 @@ int ieee80211_start_tx_ba_session(struct ieee80211_sta *pubsta, u16 tid,
>  	/* check if the TID is not in aggregation flow already */
>  	if (tid_tx || sta->ampdu_mlme.tid_start_tx[tid]) {
>  		ht_dbg(sdata,
> -		       "BA request denied - session is not idle on tid %u\n",
> -		       tid);
> +		       "BA request denied - session is not idle on %pM tid %u\n",
> +		       sta->sta.addr, tid);
>  		ret = -EAGAIN;
>  		goto err_unlock_sta;
>  	}
> @@ -632,7 +637,8 @@ static void ieee80211_agg_tx_operational(struct ieee80211_local *local,
>  
>  	tid_tx = rcu_dereference_protected_tid_tx(sta, tid);
>  
> -	ht_dbg(sta->sdata, "Aggregation is on for tid %d\n", tid);
> +	ht_dbg(sta->sdata, "Aggregation is on for %pM tid %d\n",
> +	       sta->sta.addr, tid);
>  
>  	drv_ampdu_action(local, sta->sdata,
>  			 IEEE80211_AMPDU_TX_OPERATIONAL,
> @@ -802,7 +808,9 @@ void ieee80211_stop_tx_ba_cb(struct ieee80211_vif *vif, u8 *ra, u8 tid)
>  	tid_tx = rcu_dereference_protected_tid_tx(sta, tid);
>  
>  	if (!tid_tx || !test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) {
> -		ht_dbg(sdata, "unexpected callback to A-MPDU stop\n");
> +		ht_dbg(sdata,
> +		       "unexpected callback to A-MPDU stop for %pM tid %d\n",
> +		       sta->sta.addr, tid);
>  		goto unlock_sta;
>  	}
>  
> @@ -861,13 +869,15 @@ void ieee80211_process_addba_resp(struct ieee80211_local *local,
>  		goto out;
>  
>  	if (mgmt->u.action.u.addba_resp.dialog_token != tid_tx->dialog_token) {
> -		ht_dbg(sta->sdata, "wrong addBA response token, tid %d\n", tid);
> +		ht_dbg(sta->sdata, "wrong addBA response token, %pM tid %d\n",
> +		       sta->sta.addr, tid);
>  		goto out;
>  	}
>  
>  	del_timer_sync(&tid_tx->addba_resp_timer);
>  
> -	ht_dbg(sta->sdata, "switched off addBA timer for tid %d\n", tid);
> +	ht_dbg(sta->sdata, "switched off addBA timer for %pM tid %d\n",
> +	       sta->sta.addr, tid);
>  
>  	/*
>  	 * addba_resp_timer may have fired before we got here, and
> @@ -877,8 +887,8 @@ void ieee80211_process_addba_resp(struct ieee80211_local *local,
>  	if (test_bit(HT_AGG_STATE_WANT_STOP, &tid_tx->state) ||
>  	    test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) {
>  		ht_dbg(sta->sdata,
> -		       "got addBA resp for tid %d but we already gave up\n",
> -		       tid);
> +		       "got addBA resp for %pM tid %d but we already gave up\n",
> +		       sta->sta.addr, tid);
>  		goto out;
>  	}
>  


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux