Hi,
In ath_detach, there is:
ath9k_hw_detach(sc->sc_ah);
ath9k_exit_debug(sc);
ath9k_ps_restore(sc);
which is obviously wrong. sc->ah is dereferenced in restore, but it's
already freed since detach.
I don't quite understand why you try to set power while it's being
already set to full sleep in ath9k_hw_detach. So I think the fix is to
remove the restore call, but dunno. So please fix it anyhow :).
On Mon, Jun 22, 2009 at 09:53:43PM +0530, Jiri Slaby wrote:
> Hi,
>
> In ath_detach, there is:
> ath9k_hw_detach(sc->sc_ah);
> ath9k_exit_debug(sc);
> ath9k_ps_restore(sc);
> which is obviously wrong. sc->ah is dereferenced in restore, but it's
> already freed since detach.
Yes, this is wrong.
>
> I don't quite understand why you try to set power while it's being
> already set to full sleep in ath9k_hw_detach.
>So I think the fix is to
> remove the restore call.
Yes, restoring the power state in ath_detach() is pointless.
I'll fix it,Thanks!.
Vasanth