Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread David Wolfskill
On Sun, Aug 15, 2010 at 12:07:13AM +0800, Adrian Chadd wrote:
 You should be able to revert the ath changes reasonably easy.
 
 Would you mind doing that and see if that fixes or contributes to the problem?

Will do; I'll report back when I have information to report -- probably
within 30 minutes.

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpl8Bj7IMES7.pgp
Description: PGP signature


Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread Adrian Chadd
You should be able to revert the ath changes reasonably easy.

Would you mind doing that and see if that fixes or contributes to the problem?

Thanks,


Adrian


On 14 August 2010 23:29, David Wolfskill da...@catwhisker.org wrote:
 Previously built @r211278; just build r211295 this morning, and didn't
 quite pass the smoke test.  I'll attach core.txt; here are highlights:

 FreeBSD localhost 9.0-CURRENT FreeBSD 9.0-CURRENT #89 r211295: Sat Aug 14 
 07:34:56 PDT 2010     r...@g1-219.catwhisker.org.:/usr/obj/usr/src/sys/CANARY 
  i386
 ...
 Kernel page fault with the following non-sleepable locks held:
 exclusive sleep mutex ath0_com_lock (ath0_com_lock) r = 0 (0xc896e014) locked 
 @ /usr/src/sys/net80211/ieee80211_scan.c:957
 KDB: stack backtrace:
 db_trace_self_wrapper(c0cb0eda,c53b9aa0,c08d93e5,3bd,0,...) at 0xc04da736 = 
 db_trace_self_wrapper+0x26
 kdb_backtrace(3bd,0,,c0f47aac,c53b9ad8,...) at 0xc08c4319 = 
 kdb_backtrace+0x29
 _witness_debugger(c0cb3689,c53b9aec,4,1,0,...) at 0xc08d93e5 = 
 _witness_debugger+0x25
 witness_warn(5,0,c0ceadbf,c08d0229,c0e04de0,...) at 0xc08da8ee = 
 witness_warn+0x1fe
 trap(c53b9b78) at 0xc0bd9835 = trap+0x195
 calltrap() at 0xc0bc0b9c = calltrap+0x6
 --- trap 0xc, eip = 0xc0962604, esp = 0xc53b9bb8, ebp = 0xc53b9bd8 ---
 amrr_node_init(c8d3c000,c7d18d2e,c7d18d3f,1,c8d37800,...) at 0xc0962604 = 
 amrr_node_init+0x84
 ieee80211_sta_join(c8cac000,c896e320,c7d18d00,1,c896e000,...) at 0xc0985c07 = 
 ieee80211_sta_join+0x1f7
 sta_pick_bss(c8996800,c8cac000,c0cc54c4,3bd,246,...) at 0xc0993853 = 
 sta_pick_bss+0x113
 scan_task(c8996800,1,c0cb27d9,53,c53b9cd8,...) at 0xc099102b = scan_task+0x4bb
 taskqueue_run(c894e880,c894e898,0,c0ccee5e,0,...) at 0xc08d09d3 = 
 taskqueue_run+0xc3
 taskqueue_thread_loop(c896e074,c53b9d28,c0ca8b19,343,c0e04de0,...) at 
 0xc08d119e = taskqueue_thread_loop+0x6e
 fork_exit(c08d1130,c896e074,c53b9d28) at 0xc0867348 = fork_exit+0xb8
 fork_trampoline() at 0xc0bc0c14 = fork_trampoline+0x8
 --- trap 0, eip = 0, esp = 0xc53b9d60, ebp = 0 ---

 Fatal trap 12: page fault while in kernel mode
 cpuid = 0; apic id = 00
 fault virtual address   = 0x0
 fault code              = supervisor read, page not present
 instruction pointer     = 0x20:0xc0962604
 stack pointer           = 0x28:0xc53b9bb8
 frame pointer           = 0x28:0xc53b9bd8
 code segment            = base 0x0, limit 0xf, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
 processor eflags        = interrupt enabled, resume, IOPL = 0
 current process         = 0 (ath0 taskq)
 panic: from debugger
 cpuid = 0
 KDB: stack backtrace:
 Uptime: 35s
 Physical memory: 2031 MB
 Dumping 94 MB: 79 63 47 31 15
 ...
 Loaded symbols for /boot/kernel/tmpfs.ko
 #0  doadump () at pcpu.h:231
 231     pcpu.h: No such file or directory.
        in pcpu.h
 (kgdb) #0  doadump () at pcpu.h:231
 #1  0xc089166e in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:416
 #2  0xc0891942 in panic (fmt=Variable fmt is not available.
 ) at /usr/src/sys/kern/kern_shutdown.c:590
 #3  0xc04d8037 in db_panic (addr=Could not find the frame base for db_panic.
 ) at /usr/src/sys/ddb/db_command.c:478
 #4  0xc04d8661 in db_command (last_cmdp=0xc0de6a5c, cmd_table=0x0, dopager=1)
    at /usr/src/sys/ddb/db_command.c:445
 #5  0xc04d87ba in db_command_loop () at /usr/src/sys/ddb/db_command.c:498
 #6  0xc04da6dd in db_trap (type=12, code=0) at /usr/src/sys/ddb/db_main.c:229
 #7  0xc08c407e in kdb_trap (type=12, code=0, tf=0xc53b9b78)
    at /usr/src/sys/kern/subr_kdb.c:535
 #8  0xc0bd931f in trap_fatal (frame=0xc53b9b78, eva=0)
    at /usr/src/sys/i386/i386/trap.c:936
 #9  0xc0bd9843 in trap (frame=0xc53b9b78) at /usr/src/sys/i386/i386/trap.c:326
 #10 0xc0bc0b9c in calltrap () at /usr/src/sys/i386/i386/exception.s:166
 #11 0xc0962604 in amrr_node_init (ni=0xc8d3c000)
    at /usr/src/sys/net80211/ieee80211_amrr.c:152
 #12 0xc0985c07 in ieee80211_sta_join (vap=0xc8cac000, chan=0xc896e320,
    se=0xc7d18d00) at ieee80211_ratectl.h:80
 #13 0xc0993853 in sta_pick_bss (ss=0xc8996800, vap=0xc8cac000)
    at /usr/src/sys/net80211/ieee80211_scan_sta.c:1244
 #14 0xc099102b in scan_task (arg=0xc8996800, pending=1)
    at /usr/src/sys/net80211/ieee80211_scan.c:986
 #15 0xc08d09d3 in taskqueue_run (queue=0xc894e880, tpp=0xc53b9cd8)
    at /usr/src/sys/kern/subr_taskqueue.c:240
 #16 0xc08d119e in taskqueue_thread_loop (arg=0xc896e074)
    at /usr/src/sys/kern/subr_taskqueue.c:365
 #17 0xc0867348 in fork_exit (callout=0xc08d1130 taskqueue_thread_loop,
    arg=0xc896e074, frame=0xc53b9d28) at /usr/src/sys/kern/kern_fork.c:843
 #18 0xc0bc0c14 in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:273


 I see that r211295 is fairly recent, but that there were some
 ath(4)-related commits subsequent (r211299; r211303).  While I admit
 but sketchy knowlegde of the code, I don't see anything glaringly
 obvious there.

 I'm certainly willing to test, but I have some more critical domestic
 priorities for most of the day, 

Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread David Wolfskill
On Sun, Aug 15, 2010 at 12:07:13AM +0800, Adrian Chadd wrote:
 You should be able to revert the ath changes reasonably easy.
 
 Would you mind doing that and see if that fixes or contributes to the problem?

OK; I reverted by doing this:

g1-46(9.0-C)[1] cd /usr/src
g1-46(9.0-C)[2] svn merge -c -211295 file:///svn/freebsd/src/base/head
--- Reverse-merging r211295 into 'sys':
Usys/net80211/ieee80211_node.c
Usys/net80211/ieee80211_sta.c
g1-46(9.0-C)[3] 

I then re-built the kernel and rebooted (with the ath(4) card inserted):

g1-219(9.0-C)[1] uname -a
FreeBSD g1-219.catwhisker.org. 9.0-CURRENT FreeBSD 9.0-CURRENT #90 r211295M: 
Sat Aug 14 09:30:55 PDT 2010 
r...@g1-46.catwhisker.org.:/usr/obj/usr/src/sys/CANARY  i386
g1-219(9.0-C)[2] ifconfig
xl0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
options=80009RXCSUM,VLAN_MTU,LINKSTATE
ether 00:08:74:e9:c9:41
media: Ethernet autoselect (none)
status: no carrier
fwe0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
options=8VLAN_MTU
ether 42:4f:c0:2c:30:41
ch 1 dma -1
fwip0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
lladdr 42.4f.c0.0.7.2c.30.41.a.2.ff.fe.0.0.0.0
iwi0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 2290
ether 00:0e:35:aa:11:ca
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
status: associated
plip0: flags=8810POINTOPOINT,SIMPLEX,MULTICAST metric 0 mtu 1500
ipfw0: flags=8801UP,SIMPLEX,MULTICAST metric 0 mtu 65536
lo0: flags=8049UP,LOOPBACK,RUNNING,MULTICAST metric 0 mtu 16384
options=3RXCSUM,TXCSUM
inet 127.0.0.1 netmask 0xff00 
inet6 ::1 prefixlen 128 
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7 
nd6 options=21PERFORMNUD,AUTO_LINKLOCAL
ath0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 2290
ether 00:40:96:a7:a7:01
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
status: associated
wlan1: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500
ether 00:0e:35:aa:11:ca
media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
status: no carrier
ssid  channel 5 (2432 MHz 11g)
country US authmode WPA1+WPA2/802.11i privacy ON deftxkey UNDEF
txpower 0 bmiss 24 scanvalid 60 protmode CTS wme roaming MANUAL
bintval 0
wlan0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500
ether 00:40:96:a7:a7:01
inet 172.17.1.219 netmask 0x broadcast 172.17.255.255
media: IEEE 802.11 Wireless Ethernet OFDM/24Mbps mode 11g
status: associated
ssid lmdhw-net channel 11 (2462 MHz 11g) bssid 08:10:75:08:8c:1c
regdomain FCC indoor ecm authmode OPEN privacy ON deftxkey 1
wepkey 1:40-bit txpower 21 bmiss 7 scanvalid 60 bgscan bgscanintvl 300
bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS wme burst
g1-219(9.0-C)[3] 

I think that qualifies as working.

Thanks!

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgp5NRPlpbfHS.pgp
Description: PGP signature


Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread Bernhard Schmidt
On Sat, Aug 14, 2010 at 18:47, David Wolfskill da...@catwhisker.org wrote:
 On Sun, Aug 15, 2010 at 12:07:13AM +0800, Adrian Chadd wrote:
 You should be able to revert the ath changes reasonably easy.

 Would you mind doing that and see if that fixes or contributes to the 
 problem?

 OK; I reverted by doing this:

 g1-46(9.0-C)[1] cd /usr/src
 g1-46(9.0-C)[2] svn merge -c -211295 file:///svn/freebsd/src/base/head
 --- Reverse-merging r211295 into 'sys':
 U    sys/net80211/ieee80211_node.c
 U    sys/net80211/ieee80211_sta.c
 g1-46(9.0-C)[3]

 I then re-built the kernel and rebooted (with the ath(4) card inserted):
 [..]
 I think that qualifies as working.

Indeed, please try attached patch.

-- 
Bernhard


ratectl_node_init.diff
Description: Binary data
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org

Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread David Wolfskill
On Sat, Aug 14, 2010 at 07:05:40PM +0200, Bernhard Schmidt wrote:
 ...
  OK; I reverted by doing this:
 
  g1-46(9.0-C)[1] cd /usr/src
  g1-46(9.0-C)[2] svn merge -c -211295 file:///svn/freebsd/src/base/head
  --- Reverse-merging r211295 into 'sys':
  U    sys/net80211/ieee80211_node.c
  U    sys/net80211/ieee80211_sta.c
  g1-46(9.0-C)[3]
 
  I then re-built the kernel and rebooted (with the ath(4) card inserted):
  [..]
  I think that qualifies as working.
 
 Indeed, please try attached patch.

Patch applied cleanly; rebuilt kernel; rebooted OK:

g1-219(9.0-C)[1] uname -a
FreeBSD g1-219.catwhisker.org. 9.0-CURRENT FreeBSD 9.0-CURRENT #91 r211295M: 
Sat Aug 14 10:22:11 PDT 2010 
r...@g1-219.catwhisker.org.:/usr/obj/usr/src/sys/CANARY  i386
g1-219(9.0-C)[2] ifconfig
xl0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
options=80009RXCSUM,VLAN_MTU,LINKSTATE
ether 00:08:74:e9:c9:41
media: Ethernet autoselect (none)
status: no carrier
fwe0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
options=8VLAN_MTU
ether 42:4f:c0:2c:30:41
ch 1 dma -1
fwip0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
lladdr 42.4f.c0.0.7.2c.30.41.a.2.ff.fe.0.0.0.0
iwi0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 2290
ether 00:0e:35:aa:11:ca
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
status: associated
plip0: flags=8810POINTOPOINT,SIMPLEX,MULTICAST metric 0 mtu 1500
ipfw0: flags=8801UP,SIMPLEX,MULTICAST metric 0 mtu 65536
lo0: flags=8049UP,LOOPBACK,RUNNING,MULTICAST metric 0 mtu 16384
options=3RXCSUM,TXCSUM  
inet 127.0.0.1 netmask 0xff00 
inet6 ::1 prefixlen 128 
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7 
nd6 options=21PERFORMNUD,AUTO_LINKLOCAL
ath0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 2290
ether 00:40:96:a7:a7:01
media: IEEE 802.11 Wireless Ethernet autoselect mode 11b
status: associated
wlan1: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500
ether 00:0e:35:aa:11:ca
media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
status: no carrier
ssid  channel 5 (2432 MHz 11g)
country US authmode WPA1+WPA2/802.11i privacy ON deftxkey UNDEF
txpower 0 bmiss 24 scanvalid 60 protmode CTS wme roaming MANUAL
bintval 0
wlan0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500
ether 00:40:96:a7:a7:01
inet 172.17.1.219 netmask 0x broadcast 172.17.255.255
media: IEEE 802.11 Wireless Ethernet DS/11Mbps mode 11b
status: associated
ssid lmdhw-net channel 6 (2437 MHz 11b) bssid 00:60:1d:f1:ed:d3
regdomain FCC indoor ecm authmode OPEN privacy ON deftxkey 1
wepkey 1:40-bit txpower 23 bmiss 7 scanvalid 60 bgscan bgscanintvl 300
bgscanidle 250 roam:rssi 7 roam:rate 1 wme burst
g1-219(9.0-C)[3] 

Thanks!

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpUWJtj4coXo.pgp
Description: PGP signature


Re: Panic: Kernel page fault with ath0_com_lock held, r211295

2010-08-14 Thread Bernhard Schmidt
On Sat, Aug 14, 2010 at 19:43, David Wolfskill da...@catwhisker.org wrote:
 On Sat, Aug 14, 2010 at 07:05:40PM +0200, Bernhard Schmidt wrote:
 ...
  OK; I reverted by doing this:
 
  g1-46(9.0-C)[1] cd /usr/src
  g1-46(9.0-C)[2] svn merge -c -211295 file:///svn/freebsd/src/base/head
  --- Reverse-merging r211295 into 'sys':
  U    sys/net80211/ieee80211_node.c
  U    sys/net80211/ieee80211_sta.c
  g1-46(9.0-C)[3]
 
  I then re-built the kernel and rebooted (with the ath(4) card inserted):
  [..]
  I think that qualifies as working.

 Indeed, please try attached patch.

 Patch applied cleanly; rebuilt kernel; rebooted OK:

Thanks, I've committed a 'slightly' different version. Drivers which
aren't using the ratectl framework should be unaffected by any changes
regarding ratectl in the future.

Sorry for the noise.


-- 
Bernhard
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org