[patch] iwi(4) watchdog broken
Bernhard Schmidt
bschmidt at freebsd.org
Tue Apr 3 12:38:22 UTC 2012
On Tue, Apr 3, 2012 at 14:12, Mitsuru IWASAKI <iwasaki at jp.freebsd.org> wrote:
> Hi,
>> > Suspend/Resume problem was solved (thanks bschmidt!),
>> > however problem still remainds after watchdog messages like
>> > `device timeout' or `firmware stuck in state 4, resetting'.
>>
>> Honestly, I'd rather see the above issues fixed and not the workaround
>> for it. ;)
>> Do you have a test case to reproduce this?
>
> Yap, ifconfig wlan0 scan on RELENG_8 always reproduce 'firmware stuck
> in state 4, resetting'.
Ah, yeah, ok, the scan issue again, that is probably the reason why
background scan support is disabled..
>> So, if I get that correctly, the only difference is that you added a
>> ieee80211_new_state_locked(vap, IEEE80211_S_INIT, -1); call, right?
>> Any reason why not calling ieee80211_stop_all()/ieee80211_start_all()
>> directly in iwi_restart()? This will call the appropriate
>> iwi_init/stop functions.
>
> Yes, I already tried that, wlan0 seems restarted but iwi0 not.
> ifconfig show the status like this;
> iwi0: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
> [snip]
> wlan0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
> [snip]
>
> I wonder if only RELENG_8 has this problem because HEAD and RELENG_9
> seems to be OK...
wpa_supplicant involved? I mean, that is the only thing I can
currently think of, wpa_supplicant versions differ between head and 8
afaik. The callgraph is also different between with and without
supplicant. Can we rule the supplicant out somehow?
I mean this condition in ieee80211_start_locked()
if ((parent->if_drv_flags & IFF_DRV_RUNNING) &&
vap->iv_roaming != IEEE80211_ROAMING_MANUAL) {
--
Bernhard
More information about the freebsd-wireless
mailing list