On Thu, Oct 11, 2012 at 08:14:01AM -0400, Bob Copeland wrote:
> which would indicate that info->control.rates[0].count == 0. Somehow
> the control block in the tx skb got zeroed?
Can you post the output ('dmesg | grep XXX') with this patch applied?
>From 9fda3fa2386274f22c9dd731db235c574dec7daf Mon Sep 17 00:00:00 2001
From: Bob Copeland <[email protected]>
Date: Fri, 12 Oct 2012 15:39:50 -0400
Subject: [PATCH] ath5k: debug 0 rate retry path
Signed-off-by: Bob Copeland <[email protected]>
---
drivers/net/wireless/ath/ath5k/base.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/ath/ath5k/base.c
b/drivers/net/wireless/ath/ath5k/base.c
index a0a202d..7e08c6a 100644
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
@@ -720,6 +720,17 @@ ath5k_txbuf_setup(struct ath5k_hw *ah, struct ath5k_buf
*bf,
duration = le16_to_cpu(ieee80211_ctstoself_duration(ah->hw,
info->control.vif, pktlen, info));
}
+
+ if (!info->control.rates[0].count) {
+ struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
+ printk(KERN_DEBUG "XXX: tx frame with 0 rates!\n");
+ printk(KERN_DEBUG "XXX: skbp: %p\n", skb);
+ print_hex_dump_bytes("XXX txinfo: ", DUMP_PREFIX_OFFSET, info,
+ sizeof(*info));
+ print_hex_dump_bytes("XXX: frame: ", DUMP_PREFIX_OFFSET, hdr,
+ sizeof(*hdr));
+ }
+
ret = ah->ah_setup_tx_desc(ah, ds, pktlen,
ieee80211_get_hdrlen_from_skb(skb), padsize,
get_hw_packet_type(skb),
--
1.7.2.5
--
Bob Copeland %% www.bobcopeland.com
_______________________________________________
Devel mailing list
[email protected]
http://lists.open80211s.org/cgi-bin/mailman/listinfo/devel