summaryrefslogtreecommitdiff
blob: 7f79ec0fd32d750bf86a1293731648c7c02acfbd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Walkaround kernel BUG_ON panic caused by unexpected duplicate packets.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
---

 ipw2200-1.0.6-chuyee/ipw2200.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff -puN ipw2200.c~dup-without-retry ipw2200.c
--- ipw2200-1.0.6/ipw2200.c~dup-without-retry	2005-08-03 13:59:11.000000000 +0800
+++ ipw2200-1.0.6-chuyee/ipw2200.c	2005-08-03 14:51:52.000000000 +0800
@@ -7698,7 +7698,6 @@ static inline int is_network_packet(stru
 static inline int is_duplicate_packet(struct ipw_priv *priv,
 				      struct ieee80211_hdr *header)
 {
-	u16 fc = le16_to_cpu(header->frame_ctl);
 	u16 sc = le16_to_cpu(header->seq_ctl);
 	u16 seq = WLAN_GET_SEQ_SEQ(sc);
 	u16 frag = WLAN_GET_SEQ_FRAG(sc);
@@ -7759,7 +7758,10 @@ static inline int is_duplicate_packet(st
 	return 0;
 
 drop:
-	BUG_ON(!(fc & IEEE80211_FCTL_RETRY));
+	/* Comment this line now since we observed the card receives
+	 * duplicate packets but the FCTL_RETRY bit is not set in the
+	 * IBSS mode with fragmentation enabled.
+	BUG_ON(!(le16_to_cpu(header->frame_ctl) & IEEE80211_FCTL_RETRY)); */
 	return 1;
 }
 
_