ath as AP panics
Adrian Chadd
adrian at freebsd.org
Mon Aug 12 17:34:07 UTC 2013
Hm. OK.
What I want is the code path _in_ that's queuing a frame via
ieee80211_vap_transmit() with m_nextpkt set to NON-NULL.
-adrian
On 12 August 2013 10:32, Lev Serebryakov <lev at freebsd.org> wrote:
> Hello, Adrian.
> You wrote 12 августа 2013 г., 21:29:08:
>
> AC> So the if_transmit() change did change a few things. if_start() /
> AC> *_ENQUEUE() clears m_nextpkt().
>
> AC> I'd like to know where m_nextpkt() is NOT being cleared.
>
> AC> How about triggering it quickly - put in a panic there rather than
> AC> NULL'ing it, then when it immediately panics, do a backtrace?
> So, replace printf() here with panic()?
> Now I have backtrace from panic BEFORE this diagnostic patch is applied.
> Isn't it enough?
>
> #0 doadump (textdump=1) at pcpu.h:236
> 236 pcpu.h: No such file or directory.
> in pcpu.h
> (kgdb) #0 doadump (textdump=1) at pcpu.h:236
> #1 0xffffffff804b4505 in kern_reboot (howto=260)
> at /data/src/sys/kern/kern_shutdown.c:447
> #2 0xffffffff804b48e4 in panic (fmt=<value optimized out>)
> at /data/src/sys/kern/kern_shutdown.c:754
> #3 0xffffffff806c5b5a in trap_fatal (frame=<value optimized out>,
> eva=<value optimized out>) at /data/src/sys/amd64/amd64/trap.c:873
> #4 0xffffffff806c5dc7 in trap_pfault (frame=0x0, usermode=0)
> at /data/src/sys/amd64/amd64/trap.c:699
> #5 0xffffffff806c54f4 in trap (frame=0xffffff812205e7a0)
> at /data/src/sys/amd64/amd64/trap.c:463
> #6 0xffffffff806af7b3 in calltrap ()
> at /data/src/sys/amd64/amd64/exception.S:232
> #7 0xffffffff802ef411 in ath_transmit (ifp=0xfffffe0001a9a800,
> m=<value optimized out>) at /data/src/sys/dev/ath/if_ath.c:2953
> #8 0xffffffff8059a1e6 in ieee80211_vap_pkt_send_dest (
> vap=<value optimized out>, m=<value optimized out>, ni=0xffffff8000f96000)
> at /data/src/sys/net80211/ieee80211_output.c:239
> #9 0xffffffff8059ae3b in ieee80211_vap_transmit (ifp=<value optimized out>,
> m=<value optimized out>) at /data/src/sys/net80211/ieee80211_output.c:389
> #10 0xffffffff8059f5ff in pwrsave_flushq (ni=<value optimized out>)
> at /data/src/sys/net80211/ieee80211_power.c:479
> #11 0xffffffff80588209 in hostap_input (ni=0xffffff8000f96000,
> m=<value optimized out>, rssi=43, nf=-96)
> at /data/src/sys/net80211/ieee80211_hostap.c:648
> #12 0xffffffff8030825a in ath_rx_pkt (sc=0xffffff80007ba000,
> rs=0xffffff8000880d78, status=HAL_OK, tsf=<value optimized out>, nf=-96,
> qtype=<value optimized out>, m=<value optimized out>)
> at /data/src/sys/dev/ath/if_ath_rx.c:808
> #13 0xffffffff80308ec0 in ath_rx_proc (sc=0xffffff80007ba000, resched=1)
> at /data/src/sys/dev/ath/if_ath_rx.c:995
> #14 0xffffffff804f2426 in taskqueue_run_locked (queue=0xfffffe0001a59b00)
> at /data/src/sys/kern/subr_taskqueue.c:333
> #15 0xffffffff804f2ca8 in taskqueue_thread_loop (arg=<value optimized out>)
> at /data/src/sys/kern/subr_taskqueue.c:535
> #16 0xffffffff804885e5 in fork_exit (
> callout=0xffffffff804f2c00 <taskqueue_thread_loop>,
> arg=0xffffff80007ba830, frame=0xffffff812205ec00)
> at /data/src/sys/kern/kern_fork.c:991
> #17 0xffffffff806afcee in fork_trampoline ()
> at /data/src/sys/amd64/amd64/exception.S:606
>
>
>
>
> --
> // Black Lion AKA Lev Serebryakov <lev at FreeBSD.org>
>
More information about the freebsd-wireless
mailing list