]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/2.6.32.17/ath5k-drop-warning-on-jumbo-frames.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 2.6.32.17 / ath5k-drop-warning-on-jumbo-frames.patch
1 From 9637e516d16a58b13f6098cfe899e22963132be3 Mon Sep 17 00:00:00 2001
2 From: Luis R. Rodriguez <lrodriguez@atheros.com>
3 Date: Mon, 10 May 2010 15:26:27 -0400
4 Subject: ath5k: drop warning on jumbo frames
5
6 From: Luis R. Rodriguez <lrodriguez@atheros.com>
7
8 commit 9637e516d16a58b13f6098cfe899e22963132be3 upstream.
9
10 Jumbo frames are not supported, and if they are seen it is likely
11 a bogus frame so just silently discard them instead of warning on
12 them all time. Also, instead of dropping them immediately though
13 move the check *after* we check for all sort of frame errors. This
14 should enable us to discard these frames if the hardware picks
15 other bogus items first. Lets see if we still get those jumbo
16 counters increasing still with this.
17
18 Jumbo frames would happen if we tell hardware we can support
19 a small 802.11 chunks of DMA'd frame, hardware would split RX'd
20 frames into parts and we'd have to reconstruct them in software.
21 This is done with USB due to the bulk size but with ath5k we
22 already provide a good limit to hardware and this should not be
23 happening.
24
25 This is reported quite often and if it fills the logs then this
26 needs to be addressed and to avoid spurious reports.
27
28 Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
29 Signed-off-by: John W. Linville <linville@tuxdriver.com>
30 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
31
32 ---
33 drivers/net/wireless/ath/ath5k/base.c | 7 ++-----
34 1 file changed, 2 insertions(+), 5 deletions(-)
35
36 --- a/drivers/net/wireless/ath/ath5k/base.c
37 +++ b/drivers/net/wireless/ath/ath5k/base.c
38 @@ -1818,11 +1818,6 @@ ath5k_tasklet_rx(unsigned long data)
39 return;
40 }
41
42 - if (unlikely(rs.rs_more)) {
43 - ATH5K_WARN(sc, "unsupported jumbo\n");
44 - goto next;
45 - }
46 -
47 if (unlikely(rs.rs_status)) {
48 if (rs.rs_status & AR5K_RXERR_PHY)
49 goto next;
50 @@ -1852,6 +1847,8 @@ ath5k_tasklet_rx(unsigned long data)
51 sc->opmode != NL80211_IFTYPE_MONITOR)
52 goto next;
53 }
54 + if (unlikely(rs.rs_more))
55 + goto next;
56 accept:
57 next_skb = ath5k_rx_skb_alloc(sc, &next_skb_addr);
58