* [PATCH] ath5k: disable irq handling in ath5k_hw_detach()
@ 2008-03-12 20:13 Pavel Roskin
2008-03-12 21:15 ` [ath5k-devel] " Nick Kossifidis
0 siblings, 1 reply; 2+ messages in thread
From: Pavel Roskin @ 2008-03-12 20:13 UTC (permalink / raw)
To: ath5k-devel, linux-wireless
Once ah has been freed, it may not be accessed. Set ATH_STAT_INVALID
bit to make the interrupt handler return IRQ_NONE without accessing ah.
This fixes oops on unload with CONFIG_DEBUG_SHIRQ enabled.
Signed-off-by: Pavel Roskin <proski@gnu.org>
---
drivers/net/wireless/ath5k/hw.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/ath5k/hw.c b/drivers/net/wireless/ath5k/hw.c
index 677600b..ff579a2 100644
--- a/drivers/net/wireless/ath5k/hw.c
+++ b/drivers/net/wireless/ath5k/hw.c
@@ -458,6 +458,8 @@ void ath5k_hw_detach(struct ath5k_hw *ah)
{
ATH5K_TRACE(ah->ah_sc);
+ __set_bit(ATH_STAT_INVALID, ah->ah_sc->status);
+
if (ah->ah_rf_banks != NULL)
kfree(ah->ah_rf_banks);
--
Regards,
Pavel Roskin
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [ath5k-devel] [PATCH] ath5k: disable irq handling in ath5k_hw_detach()
2008-03-12 20:13 [PATCH] ath5k: disable irq handling in ath5k_hw_detach() Pavel Roskin
@ 2008-03-12 21:15 ` Nick Kossifidis
0 siblings, 0 replies; 2+ messages in thread
From: Nick Kossifidis @ 2008-03-12 21:15 UTC (permalink / raw)
To: Pavel Roskin; +Cc: ath5k-devel, linux-wireless
2008/3/12, Pavel Roskin <proski@gnu.org>:
> Once ah has been freed, it may not be accessed. Set ATH_STAT_INVALID
> bit to make the interrupt handler return IRQ_NONE without accessing ah.
>
> This fixes oops on unload with CONFIG_DEBUG_SHIRQ enabled.
>
> Signed-off-by: Pavel Roskin <proski@gnu.org>
> ---
>
> drivers/net/wireless/ath5k/hw.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
>
> diff --git a/drivers/net/wireless/ath5k/hw.c b/drivers/net/wireless/ath5k/hw.c
> index 677600b..ff579a2 100644
> --- a/drivers/net/wireless/ath5k/hw.c
> +++ b/drivers/net/wireless/ath5k/hw.c
> @@ -458,6 +458,8 @@ void ath5k_hw_detach(struct ath5k_hw *ah)
> {
> ATH5K_TRACE(ah->ah_sc);
>
> + __set_bit(ATH_STAT_INVALID, ah->ah_sc->status);
> +
> if (ah->ah_rf_banks != NULL)
> kfree(ah->ah_rf_banks);
>
>
>
> --
> Regards,
> Pavel Roskin
Acked-by: Nick Kossifidis <mickflemm@gmail.com>
--
GPG ID: 0xD21DB2DB
As you read this post global entropy rises. Have Fun ;-)
Nick
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-03-12 21:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-12 20:13 [PATCH] ath5k: disable irq handling in ath5k_hw_detach() Pavel Roskin
2008-03-12 21:15 ` [ath5k-devel] " Nick Kossifidis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).