Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Sep 2015 11:21:17 -0500
From:      Matthew Grooms <mgrooms@shrew.net>
To:        freebsd-wireless@freebsd.org
Subject:   Re: urtwn and hostap
Message-ID:  <55F996FD.5060804@shrew.net>
In-Reply-To: <CAJ-Vmo=BpM8gCztJm-kBVXY=oRe6vEqS7o5JeSxpUXve4d2chQ@mail.gmail.com>
References:  <55F90187.10809@shrew.net> <55F906CB.9030007@shrew.net> <CAPp9Ormnjpwfk6s5UDei=EUBrmi_Ogapjx1nDTUUN=RTYWwVQA@mail.gmail.com> <CAJ-Vmo=BpM8gCztJm-kBVXY=oRe6vEqS7o5JeSxpUXve4d2chQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 9/16/2015 10:58 AM, Adrian Chadd wrote:
> I think the net80211 beacon create routine doesn't allocate a node
> ref. Yeah, it doesn't. You have to do ieee80211_ref_node() after
> calling becaon_create(), and deref it if the tx fails. The TX success
> will free the node ref for you.
>

Got it. I'll take another look at one of the drivers that support hostap 
to make sure I'm following the same pattern. Thanks again for the feedback!

-Matthew

>
> -adrian
>
>
> On 16 September 2015 at 04:27, Idwer Vollering <vidwer@gmail.com> wrote:
>> 2015-09-16 8:06 GMT+02:00 Matthew Grooms <mgrooms@shrew.net>:
>>
>>> It looks like my screenshot got scrubbed. Here is my hopefully faithful
>>> transcription ...
>>>
>>> Fatal trap 9: general protection fault while in kernel mode
>>> cpuid = 3; apic id = 03
>>> instruction pointer = 0x20:0xffffffff80a01105
>>> stack pointer           = 0x28:0xfffffe0092fe86f0
>>> frame pointer         = 0x28:0xfffffe0092fe8740
>>> code segment         = base 0x0, limit 0xfffff, type 0x1b
>>>                                   = DPL 0, pres 1, long 1, def32 0, gran 1
>>> processor eflags     = interrupt enabled, resume, IOPL = 0
>>> current process      = 716 (ifconfig)
>>> [thread pid 716 tid 100082 ]
>>> Stopped at      __mtx_lock_flags+0x55:  movq    (%r13),%rax
>>> db> bt
>>> Tracing pid 716 tid 100082 td 0xffffff800512814d0
>>> __mtx_lock_flags() at __mtx_lock_flags+0x55/frame 0xfffffe0092fe8740
>>> ieee80211_free_node() at ieee80211_free_node()_0x38/frame 0xfffffe0092fe8780
>>> ieee80211_node_vdetach() at ieee80211_node_vdetach()+0x2d/frame
>>> 0xfffffe0092fe87a0
>>> ieee80211_vap_detach() at ieee80211_vap_detach()+0x35e/frame
>>> 0xfffffe0092fe87d0
>>> urtwn_vap_delete() at urtwn_vap_delete()+0xe/frame 0xfffffe0092fe87f0
>>> if_clone_destroyif() at if_clone_destroyif()+0x1aa/frame 0xfffffe0092fe8840
>>> if_clone_destroy() at if_clone_destroy()0x8e/frame 0xfffffe0092fe8860
>>> kern_ioctl() at kern_ioctl()+0x230/frame 0xfffffe0092fe88c0
>>> sys_ioctl() at sys_ioctl()+0x153/frame 0xfffffe0092fe89a0
>>> amd64_syscall() at amd64_syscall()+0x282/frame 0xfffffe0092fe8ab0
>>> Xfast_syscall() at Xfast_syscall()+0xfb/frame 0xfffffe0092fe8ab0
>>> -- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x8011e8c8a, rsp =
>>> 0x7fffffffe2f8, rbp = 0x7fffffffe310 --
>>> db>
>> Assuming dumpdev="AUTO" is set in /etc/rc.conf, you should have
>> entered 'dump' at the db> blinker :)
>>
>> The trap details are found in /var/crash/, run kgdb: "kgdb
>> /boot/kernel/kernel /var/crash/vmcore.last", then run 'bt' and 'up' at
>> its prompt.
>>
>>> -Matthew
>>> _______________________________________________
>>> freebsd-wireless@freebsd.org mailing list
>>> https://lists.freebsd.org/mailman/listinfo/freebsd-wireless
>>> To unsubscribe, send any mail to "freebsd-wireless-unsubscribe@freebsd.org"
>> _______________________________________________
>> freebsd-wireless@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-wireless
>> To unsubscribe, send any mail to "freebsd-wireless-unsubscribe@freebsd.org"
> _______________________________________________
> freebsd-wireless@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-wireless
> To unsubscribe, send any mail to "freebsd-wireless-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55F996FD.5060804>