Weongyo Jeong wrote: > My device is D-Link DWL-G520 and the device encountered a panic when I > did `ifconfig ath0 up'. The kernel was cvs-uped yesterday. The following > are the panic message: > > hostap# ifconfig ath0 up > ath0: ath_chan_set: unable to reset channel 1 (2412 Mhz, flags 0x480 hal > flags 0xc0) > hostap# ath0: ath_chan_set: unable to reset channel 11 (2462 Mhz, flags > 0x480 hal flags 0xc0) > ath0: ath_chan_set: unable to reset channel 13 (2472 Mhz, flags 0x480 > hal flags 0xc0) > ath0: ath_chan_set: unable to reset channel 3 (2422 Mhz, flags 0x480 hal > flags 0xc0) > ath0: ath_chan_set: unable to reset channel 8 (2447 Mhz, flags 0x480 hal > flags 0xc0) > ath0: hardware error; resetting > ath0: 0x00080000 0x00000000 0x00000000, 0x00010000 0x00000000 0x00000000 > > > Fatal trap 18: integer divide fault while in kernel mode > cpuid = 0; apic id = 00 > instruction pointer = 0x20:0xc09f0d25 > stack pointer = 0x28:0xcbd3acd8 > frame pointer = 0x28:0xcbd3acd8 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, IOPL = 0 > current process = 11 (idle: cpu0) > [thread pid 11 tid 100004 ] > Stopped at cpu_idle_default+0x5: popl %ebp > db> bt > Tracing pid 11 tid 100004 td 0xc20f7630 > cpu_idle_default(cbd3acf8,c0769e17,c0bad610,2,c0a9a19d,...) at > cpu_idle_default+0x5 > cpu_idle(c0bad610,2,c0a9a19d,562,cbd3ad24,...) at cpu_idle+0x28 > sched_idletd(0,cbd3ad38,c0a9515d,314,c20f6aa0,...) at sched_idletd+0x37 > fork_exit(c0769de0,0,cbd3ad38) at fork_exit+0xb8 > fork_trampoline() at fork_trampoline+0x8 > --- trap 0, eip = 0, esp = 0xcbd3ad70, ebp = 0 --- > db> > > > And the below informations are device informations: > > hostap# uname -a > FreeBSD hostap 7.0-CURRENT FreeBSD 7.0-CURRENT #1: Thu Sep 27 02:43:04 > KST 2007 root_at_rumhostap:/usr/obj/usr/src/sys/GENERIC i386 > > hostap# pciconf -lcv > ath0_at_pci2:2:0: class=0x020000 card=0x3a131186 chip=0x0013168c rev=0x01 > hdr=0x00 > vendor = 'Atheros Communications Inc.' > device = 'AR5212, AR5213 802.11a/b/g Wireless Adapter' > class = network > subclass = ethernet > cap 01[44] = powerspec 2 supports D0 D3 current D0 > > hostap# sysctl -a | grep dev.ath.0 > dev.ath.0.%desc: Atheros 5212 > dev.ath.0.%driver: ath > dev.ath.0.%location: slot=2 function=0 > dev.ath.0.%pnpinfo: vendor=0x168c device=0x0013 subvendor=0x1186 > subdevice=0x3a13 class=0x020000 > dev.ath.0.%parent: pci2 > dev.ath.0.smoothing_rate: 95 > dev.ath.0.sample_rate: 10 > dev.ath.0.countrycode: 0 > dev.ath.0.regdomain: 48 > dev.ath.0.slottime: 9 > dev.ath.0.acktimeout: 96 > dev.ath.0.ctstimeout: 96 > dev.ath.0.softled: 0 > dev.ath.0.ledpin: 0 > dev.ath.0.ledon: 0 > dev.ath.0.ledidle: 2700 > dev.ath.0.txantenna: 0 > dev.ath.0.rxantenna: 0 > dev.ath.0.diversity: 0 > dev.ath.0.txintrperiod: 5 > dev.ath.0.diag: 0 > dev.ath.0.tpscale: 0 > dev.ath.0.tpc: 0 > dev.ath.0.tpack: 63 > dev.ath.0.tpcts: 63 > dev.ath.0.fftxqmin: 2 > dev.ath.0.fftxqmax: 50 > dev.ath.0.monpass: 24 > > hostap# ifconfig ath0 list channel > Channel 1 : 2412 Mhz 11g Channel 8 : 2447 Mhz 11g > Channel 2 : 2417 Mhz 11g Channel 9 : 2452 Mhz 11g > Channel 3 : 2422 Mhz 11g Channel 10 : 2457 Mhz 11g > Channel 4 : 2427 Mhz 11g Channel 11 : 2462 Mhz 11g > Channel 5 : 2432 Mhz 11g Channel 12 : 2467 Mhz 11g > Channel 6 : 2437 Mhz 11g Turbo Channel 13 : 2472 Mhz 11g > Channel 7 : 2442 Mhz 11g > > stap# /sbin/ifconfig > ath0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 > ether 00:1b:11:1a:ee:32 > media: IEEE 802.11 Wireless Ethernet autoselect (autoselect) > status: no carrier > ssid "" channel 1 (2412 Mhz 11b) > authmode OPEN privacy OFF txpowmax 100 bmiss 7 scanvalid 60 bgscan > bgscanintvl 300 bgscanidle 250 roam:rssi11b 14 roam:rate11b 1 burst > > hostap# dmesg | grep -i ath > ath_hal: 0.9.20.3 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413) > ath0: <Atheros 5212> mem 0xe7000000-0xe700ffff irq 11 at device 2.0 on pci2 > ath0: [ITHREAD] > ath0: using obsoleted if_watchdog interface > ath0: Ethernet address: 00:1b:11:1a:ee:32 > ath0: mac 7.9 phy 4.5 radio 5.6 Unfortunately the value of status isn't printed when the ath_hal_reset calls fail. Please add that to the printf in ath_chan_set. Not sure where the divide fault comes from; the stack trace doesn't provide much help. If you don't have INVARIANTS enabled you should do that in case it catches what's going on before the panic happens. SamReceived on Sat Sep 29 2007 - 01:25:28 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:18 UTC