Re: converted iwi(4) for testing Was: [Testers needed!] WiFi drivers changes

From: Gleb Smirnoff <glebius_at_FreeBSD.org>
Date: Thu, 4 Jun 2015 14:29:22 +0300
On Wed, Jun 03, 2015 at 09:51:56PM +0200, Michael Moll wrote:
M> All working well, the only thing I'm seeing is that a shutdown or reboot
M> is hanging, tracing via kdb shows:
M> 
M> Tracing command wpa_supplicant pid 293 tid 100075 td 0xc81b7960
M> sched_switch(c81b7960,0,104,0,0,...) at sched_switch+0x2d8/frame 0xc72b88f4
M> mi_switch(104,0,c81b7960,c72b8944,c81b7960,c78e00b0) at mi_switch+0x11e/frame 0xc72b8928
M> sleepq_switch(c81b7960,0,c12d53b2,276,2710,...) at sleepq_switch+0x15b/frame 0xc72b8950
M> sleepq_wait(c78e00b0,6c,c12c0672,0,0,...) at sleepq_wait+0x3f/frame 0xc72b897c
M> _sleep(c78e00b0,c7775c98,6c,c12c0672,0,...) at _sleep+0x311/frame 0xc72b89c0
M> taskqueue_drain(c7775c80,c78e00b0,c81b7960,c72b8a48,c0d0f121,...) at taskqueue_drain+0x1a5/frame 0xc72b89fc
M> ieee80211_waitfor_parent(c78e0014,0,0,0,0,...) at ieee80211_waitfor_parent+0x30/frame 0xc72b8a10
M> ieee80211_ioctl(c7879400,80206910,c72b8b78,c72b8a78,c0b9515c,...) at ieee80211_ioctl+0x391/frame 0xc72b8a48
M> ifioctl(c88fe720,80206910,c72b8b78,c81b7960,10000000,...) at ifioctl+0x144a/frame 0xc72b8ad4
M> soo_ioctl(c8664700,80206910,c72b8b78,c76ee900,c81b7960,...) at soo_ioctl+0x25d/frame 0xc72b8b08
M> kern_ioctl(c81b7960,3,80206910,c72b8b78,10,...) at kern_ioctl+0x31d/frame 0xc72b8b50
M> sys_ioctl(c81b7960,c72b8ca8,28ce9000,283f8f12,c77189c0,...) at sys_ioctl+0x11b/frame 0xc72b8c10
M> syscall(c72b8ce8) at syscall+0x5e0/frame 0xc72b8cdc
M> Xint0x80_syscall() at Xint0x80_syscall+0x21/frame 0xc72b8cdc
M> --- syscall (54, FreeBSD ELF32, sys_ioctl), eip = 0x284a1d4f, esp = 0xbfbfec3c, ebp = 0xbfbfec98 ---
M> 
M> But i guess that might be another iwi bug that got uncovered now and
M> is not related to the conversion.

Since, ieee80211_waitfor_parent() waits for 6 different taskqueues, I need to
determine which one is the bad.

Since you are running i386, and right now I don't have crossdebugger, it would
be easier to ask you, rather than check this out myself :)

Can you please run 'kgdb /boot/kernel/kernel', and there in the kgdb prompt
the following:

(kgdb) set $ic = (struct ieee80211com *)0
(kgdb) p &$ic->ic_parent_task
(kgdb) p &$ic->ic_mcast_task
(kgdb) p &$ic->ic_promisc_task
(kgdb) p &$ic->ic_chan_task
(kgdb) p &$ic->ic_bmiss_task
(kgdb) p &$ic->ic_chw_task

-- 
Totus tuus, Glebius.
Received on Thu Jun 04 2015 - 09:29:25 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:58 UTC