ath kldunloading hangs the system
Sepherosa Ziehau
sepherosa at gmail.com
Tue Jun 19 07:53:58 UTC 2007
On 6/18/07, Harald Schmalzbauer <h.schmalzbauer at omnisec.de> wrote:
> Hello,
>
> it seems the recent wlan changes broke unloading the if_ath.ko.
> I have problems with resuming my laptop with ath, so I loaded it as a module.
> The resume problem still persists but now I cannot unload ath anymore.
> No panic, just system freeze.
>
> Is this a known problem?
>
> Thanks,
>
> -Harry
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
Please change following code segment, see whether it helps:
1091: static void
1092: ath_stop(struct ifnet *ifp)
1093: {
1094: struct ath_softc *sc = ifp->if_softc;
1095:
1096: ATH_LOCK(sc);
1097: ath_stop_locked(ifp);
#if 0 <====== add me
1098: if (!sc->sc_invalid) {
1099: /*
1100: * Set the chip in full sleep mode. Note that we are
1101: * careful to do this only when bringing the interface
1102: * completely to a stop. When the chip is in this state
1103: * it must be carefully woken up or references to
1104: * registers in the PCI clock domain may freeze the bus
1105: * (and system). This varies by chip and is mostly an
1106: * issue with newer parts that go to sleep more quickly.
1107: */
1108: ath_hal_setpower(sc->sc_ah, HAL_PM_FULL_SLEEP);
1109: }
#endif <====== add me
1110: ATH_UNLOCK(sc);
1111: }
Best Regards,
sephe
--
Live Free or Die
More information about the freebsd-current
mailing list