Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Apr 2012 14:38:20 +0200
From:      Bernhard Schmidt <bschmidt@freebsd.org>
To:        Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
Cc:        freebsd-wireless@freebsd.org
Subject:   Re: [patch] iwi(4) watchdog broken
Message-ID:  <CAAgh0_YC1F11r%2B-VmMS3rjdMa6OOW7UzEXjo=UyNac=WEnMr9w@mail.gmail.com>
In-Reply-To: <20120403.211212.59463568.iwasaki@jp.FreeBSD.org>
References:  <20120403.200327.18305192.iwasaki@jp.FreeBSD.org> <CAAgh0_ZuJ_dG-r7QnLRJ-NX8Ejmt1DpBehgYOMv-pt_tT4K0Yg@mail.gmail.com> <20120403.211212.59463568.iwasaki@jp.FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 3, 2012 at 14:12, Mitsuru IWASAKI <iwasaki@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAAgh0_YC1F11r%2B-VmMS3rjdMa6OOW7UzEXjo=UyNac=WEnMr9w>