Date: Mon, 14 Oct 2019 08:34:10 -0700 From: Gleb Smirnoff <glebius@freebsd.org> To: d@delphij.net Cc: Mark Johnston <markj@freebsd.org>, Hans Petter Selasky <hps@selasky.org>, Yuri Pankov <yuripv@yuripv.net>, freebsd-net <freebsd-net@freebsd.org>, erj@freebsd.org Subject: Re: panic: sleeping in an epoch section Message-ID: <20191014153410.GC4086@FreeBSD.org> In-Reply-To: <528fec5c-9b36-6f6a-5ba7-3237f56103a1@delphij.net> References: <86cc5d82-50d0-93eb-5900-54e8b0032a08@yuripv.net> <050ba95e-d0d5-dd1a-db6f-9a5c07142efe@selasky.org> <20191009135616.GC66126@raichu> <a2075acc-243c-da14-180e-686eaf59cfd6@selasky.org> <20191009144704.GD66126@raichu> <20191009150757.GI1249@FreeBSD.org> <528fec5c-9b36-6f6a-5ba7-3237f56103a1@delphij.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Xin, fixed by r353492 On Sun, Oct 13, 2019 at 11:45:46PM -0700, Xin Li wrote: X> X> X> On 2019-10-09 08:07, Gleb Smirnoff wrote: X> > Yes, I we should allow sleep in ifioctl handlers. So this is my fault, I'll X> > handle it today. X> X> It seems that -CURRENT as of today would panic with: X> X> (kgdb) #0 doadump (textdump=1) at src/sys/amd64/include/pcpu_aux.h:55 X> #1 0xffffffff80bbe550 in kern_reboot (howto=260) X> at /usr/src/sys/kern/kern_shutdown.c:479 X> #2 0xffffffff80bbe9a6 in vpanic (fmt=<value optimized out>, X> ap=<value optimized out>) at /usr/src/sys/kern/kern_shutdown.c:908 X> #3 0xffffffff80bbe703 in panic (fmt=<value optimized out>) X> at /usr/src/sys/kern/kern_shutdown.c:835 X> #4 0xffffffff80e0d1f8 in in6ifa_llaonifp (ifp=<value optimized out>) X> at /usr/src/sys/netinet6/in6.c:1554 X> #5 0xffffffff84cb3bcd in lagg_ioctl (ifp=0xfffff80019322000, X> cmd=<value optimized out>, data=<value optimized out>) X> at /usr/src/sys/net/if_lagg.c:1427 X> #6 0xffffffff80d4c281 in in_control (cmd=2152229261, X> data=0xfffffe00e01fd7d0 "lagg0", ifp=0xfffff80019322000, X> td=0xfffff80019675000) at /usr/src/sys/netinet/in.c:262 X> #7 0xffffffff80ccc6be in ifioctl (so=0xfffff8001c15c710, cmd=2152229261, X> data=0xfffffe00e01fd7d0 "lagg0", td=0xfffff80019675000) X> at /usr/src/sys/net/if.c:3106 X> #8 0xffffffff80c2fc35 in kern_ioctl (td=<value optimized out>, X> fd=<value optimized out>, com=<value optimized out>, X> data=<value optimized out>) at src/sys/sys/file.h:340 X> #9 0xffffffff80c2f92c in sys_ioctl (td=0xfffff80019675000, X> uap=0xfffff800196753c8) at /usr/src/sys/kern/sys_generic.c:709 X> #10 0xffffffff8102ee45 in amd64_syscall (td=0xfffff80019675000, traced=0) X> at src/sys/amd64/amd64/../../kern/subr_syscall.c:144 X> #11 0xffffffff810054e0 in fast_syscall_common () X> at /usr/src/sys/amd64/amd64/exception.S:581 X> #12 0x000000080047db8a in ?? () X> Previous frame inner to this frame (corrupt stack?) X> Current language: auto; currently minimal X> X> My configuration is somewhat special: I have a lagg0 (failover) group X> containing em0 and wlan0: X> X> ifconfig_wlan0="WPA" X> ifconfig_em0="ether (ethernet address of wlan0) up" X> cloned_interfaces="lagg0" X> ifconfig_lagg0="laggproto failover laggport em0 laggport wlan0 DHCP" X> ifconfig_lagg0_ipv6="inet6 accept_rtadv" X> X> Without that lagg0 setup, with only wlan0 configured to DHCP and X> accept_rtadv, the system would boot further and network access appears X> to work. X> X> By the way I think there are some recent change (not sure when, but it X> happen since August) to either e1000 or iflib have made the driver to X> expose its e1000_delay state quite a bit when ifconfig or dhclient is X> trying to configure the lagg0 group, when the wired connection is not X> available. X> X> Cheers, X> -- Gleb Smirnoff
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20191014153410.GC4086>