Linux wireless drivers development
 help / color / mirror / Atom feed
* [PATCH] ath9k: disable MIB interrupts to fix interrupt storm
@ 2008-09-23 20:01 Luis R. Rodriguez
       [not found] ` <20080923201631.GE26219@tuxdriver.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Luis R. Rodriguez @ 2008-09-23 20:01 UTC (permalink / raw)
  To: linville, linville
  Cc: Luis R. Rodriguez,
	linux-wireless@vger.kernel.org, "Steven Noonan"

For AR5416 enabling the MIB interrupts has proven to cause an
interrupt storm after 7 hours of run. We will make use of the
MIB interrupt once we have ANI supported added so for now
to cure this we disable the interrupt.

The interrupt storm can be seen as follows after 7 hours of run
as reported by  Steven Noonan <steven@uplinklabs.net>:

18:28:38          sum   1106.00
18:28:39          sum   1037.62
18:28:40          sum   1069.00
18:28:41          sum   1167.00
18:28:42          sum   1155.00
18:28:43          sum   1339.00
18:28:44          sum  18355.00
18:28:45          sum  17845.45
18:28:46          sum  15285.00
18:28:47          sum  17511.00
18:28:48          sum  17568.69
18:28:49          sum  17704.04
18:28:50          sum  18566.67
18:28:51          sum  18913.13

at 18:28:44 the MIB interrupt kicked off and caused huge
latency which can be seen even on a video he submitted:

http://www.youtube.com/watch?v=4GeCx1gZMpA

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---

This patch is intended for 2.6.27 only, we hope to just
enable ANI for 2.6.28.

 drivers/net/wireless/ath9k/core.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/ath9k/core.c b/drivers/net/wireless/ath9k/core.c
index f6c4528..8a4d4e2 100644
--- a/drivers/net/wireless/ath9k/core.c
+++ b/drivers/net/wireless/ath9k/core.c
@@ -801,9 +801,11 @@ int ath_open(struct ath_softc *sc, struct ath9k_channel *initial_chan)
 	 * Enable MIB interrupts when there are hardware phy counters.
 	 * Note we only do this (at the moment) for station mode.
 	 */
+#if 0
 	if (ath9k_hw_phycounters(ah) &&
 	    ((sc->sc_opmode == ATH9K_M_STA) || (sc->sc_opmode == ATH9K_M_IBSS)))
 		sc->sc_imask |= ATH9K_INT_MIB;
+#endif
 	/*
 	 * Some hardware processes the TIM IE and fires an
 	 * interrupt when the TIM bit is set.  For hardware
-- 
1.5.6.rc2.15.g457bb.dirty


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-09-23 21:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-23 20:01 [PATCH] ath9k: disable MIB interrupts to fix interrupt storm Luis R. Rodriguez
     [not found] ` <20080923201631.GE26219@tuxdriver.com>
2008-09-23 20:40   ` [PATCH v2] " Luis R. Rodriguez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox