Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Aug 2016 20:52:22 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-wireless@FreeBSD.org
Subject:   [Bug 211689] panic with lagg failover wireless ath and iwm
Message-ID:  <bug-211689-21060-tTQi3Weuq3@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-211689-21060@https.bugs.freebsd.org/bugzilla/>
References:  <bug-211689-21060@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D211689

Jan Kokem=C3=BCller <jan.kokemueller@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jan.kokemueller@gmail.com

--- Comment #4 from Jan Kokem=C3=BCller <jan.kokemueller@gmail.com> ---
Created attachment 173477
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D173477&action=
=3Dedit
remove pending lladdr change when destroying lagg device

Can you try the attached patch? I get similar crashes in "swi6: task queue"
when destroying a lagg device (em0 & iwn0/wlan0 in my case). Maybe this is
related. I'll open a new bug report if not.

In "lagg_clone_destroy" there can be tasks running on the sc_lladdr_task qu=
eue
that operate on the main lagg interface. Those tasks run at the same time t=
he
main lagg interface is destroyed in "ether_ifdetach" and "if_free". Tasks t=
hat
operate on the lagg ports are correctly removed in "lagg_port_destroy". But
tasks that operate on the main lagg interface are not removed. The attached
patch fixes this.

I can reproduce this crash by running "service netif restart" a few times o=
n an
unmodified 11.0-BETA4 kernel.

Also, can you try to change your lagg configuration in /etc/rc.conf to look
more like this:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D211436#c2
This may fix/work around the infinite UP/DOWN loop when bringing up the lagg
interface.

My configuration looks like this (replace "xx:xx:xx:xx:xx:xx" with the MAC
address of the wifi card). The lagg interface comes up reliably.
wlans_iwn0=3D"wlan0"
ifconfig_wlan0=3D"WPA"
ifconfig_em0=3D"ether xx:xx:xx:xx:xx:xx"
cloned_interfaces=3D"lagg0"
ifconfig_lagg0=3D"DHCP laggproto failover laggport em0 laggport wlan0"



Here is a backtrace:

#0  doadump (textdump=3D<value optimized out>) at pcpu.h:221
#1  0xffffffff80ad6d99 in kern_reboot (howto=3D260) at
/usr/src/sys/kern/kern_shutdown.c:366
#2  0xffffffff80ad734b in vpanic (fmt=3D<value optimized out>, ap=3D<value
optimized out>) at /usr/src/sys/kern/kern_shutdown.c:759
#3  0xffffffff80ad7183 in panic (fmt=3D0x0) at
/usr/src/sys/kern/kern_shutdown.c:690
#4  0xffffffff80f9cd51 in trap_fatal (frame=3D0xfffffe0227aef850, eva=3D0) =
at
/usr/src/sys/amd64/amd64/trap.c:841
#5  0xffffffff80f9cf43 in trap_pfault (frame=3D0xfffffe0227aef850, usermode=
=3D0) at
/usr/src/sys/amd64/amd64/trap.c:691
#6  0xffffffff80f9c4ec in trap (frame=3D0xfffffe0227aef850) at
/usr/src/sys/amd64/amd64/trap.c:442
#7  0xffffffff80f7fc01 in calltrap () at
/usr/src/sys/amd64/amd64/exception.S:236
#8  0xffffffff80c45800 in arp_iflladdr (arg=3D0x0, ifp=3D0xfffff800311d0800=
) at
/usr/src/sys/netinet/if_ether.c:1339
#9  0xffffffff82660516 in lagg_port_setlladdr (arg=3D<value optimized out>,
pending=3D<value optimized out>) at
/usr/src/sys/modules/if_lagg/../../net/if_lagg.c:718
#10 0xffffffff80b31dda in taskqueue_run_locked (queue=3D<value optimized ou=
t>) at
/usr/src/sys/kern/subr_taskqueue.c:465
#11 0xffffffff80b31bcf in taskqueue_run (queue=3D0xfffff80003f81200) at
/usr/src/sys/kern/subr_taskqueue.c:484
#12 0xffffffff80a9142f in intr_event_execute_handlers (p=3D<value optimized=
 out>,
ie=3D<value optimized out>) at /usr/src/sys/kern/kern_intr.c:1262
#13 0xffffffff80a91696 in ithread_loop (arg=3D<value optimized out>) at
/usr/src/sys/kern/kern_intr.c:1275
#14 0xffffffff80a8e075 in fork_exit (callout=3D0xffffffff80a915d0 <ithread_=
loop>,
arg=3D0xfffff800041fb880, frame=3D0xfffffe0227aefac0) at
/usr/src/sys/kern/kern_fork.c:1038
#15 0xffffffff80f8013e in fork_trampoline () at
/usr/src/sys/amd64/amd64/exception.S:611
#16 0x0000000000000000 in ?? ()

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-211689-21060-tTQi3Weuq3>