After clean upgrade (from source) from 11.4 to 12.2-p1 my jails do no longer work correctly. Old-fashioned jails seem to work, but most are VIMAGE+NETGRAPH style, and do not work properly. All did work flawlessly for nearly a year with Rel.11. If I start 2-3 jails, and then stop them again, there is always a panic. Also reproducible with GENERIC kernel. Can this be fixed, or do I need to revert to 11.4? The backtrace looks like this: #4 0xffffffff810bbadf at trap_pfault+0x4f #5 0xffffffff810bb23f at trap+0x4cf #6 0xffffffff810933f8 at calltrap+0x8 #7 0xffffffff80cdd555 at _if_delgroup_locked+0x465 #8 0xffffffff80cdbfbe at if_detach_internal+0x24e #9 0xffffffff80ce305c at if_vmove+0x3c #10 0xffffffff80ce3010 at vnet_if_return+0x50 #11 0xffffffff80d0e696 at vnet_destroy+0x136 #12 0xffffffff80ba781d at prison_deref+0x27d #13 0xffffffff80c3e38a at taskqueue_run_locked+0x14a #14 0xffffffff80c3f799 at taskqueue_thread_loop+0xb9 #15 0xffffffff80b9fd52 at fork_exit+0x82 #16 0xffffffff8109442e at fork_trampoline+0xe This is my typical jail config, designed and tested with Rel.11: rail { jid = 10; devfs_ruleset = 11; host.hostname = "xxx.xxx.xxx.org"; vnet = "new"; sysvshm; $ifname1l = nge_${name}_1l; $ifname1l_mac = 00:1d:92:01:01:0a; vnet.interface = "$ifname1l"; exec.prestart = " echo -e \"mkpeer eiface crhook ether\nname .:crhook $ifname1l\" \ | /usr/sbin/ngctl -f - /usr/sbin/ngctl connect ${ifname1l}: svcswitch: ether link2 ifname=`/usr/sbin/ngctl msg ${ifname1l}: getifname | \ awk '$1 == \"Args:\" { print substr($2, 2, length($2)-2)}'` /sbin/ifconfig \$ifname name $ifname1l /sbin/ifconfig $ifname1l link $ifname1l_mac "; exec.poststart = " /usr/sbin/jexec $name /sbin/sysctl kern.securelevel=3 ; "; exec.poststop = "/usr/sbin/ngctl shutdown ${ifname1l}:"; }
On 7 Dec 2020, at 13:54, Peter wrote:> After clean upgrade (from source) from 11.4 to 12.2-p1 my jails do > no longer work correctly. > > Old-fashioned jails seem to work, but most are VIMAGE+NETGRAPH style, > and do not work properly. > All did work flawlessly for nearly a year with Rel.11. > > If I start 2-3 jails, and then stop them again, there is always a > panic. > Also reproducible with GENERIC kernel. > > Can this be fixed, or do I need to revert to 11.4? > > The backtrace looks like this: > > #4 0xffffffff810bbadf at trap_pfault+0x4f > #5 0xffffffff810bb23f at trap+0x4cf > #6 0xffffffff810933f8 at calltrap+0x8 > #7 0xffffffff80cdd555 at _if_delgroup_locked+0x465 > #8 0xffffffff80cdbfbe at if_detach_internal+0x24e > #9 0xffffffff80ce305c at if_vmove+0x3c > #10 0xffffffff80ce3010 at vnet_if_return+0x50 > #11 0xffffffff80d0e696 at vnet_destroy+0x136 > #12 0xffffffff80ba781d at prison_deref+0x27d > #13 0xffffffff80c3e38a at taskqueue_run_locked+0x14a > #14 0xffffffff80c3f799 at taskqueue_thread_loop+0xb9 > #15 0xffffffff80b9fd52 at fork_exit+0x82 > #16 0xffffffff8109442e at fork_trampoline+0xe > > This is my typical jail config, designed and tested with Rel.11: >That smells a lot like the epair/vnet issues in bugs 238870, 234985, 244703, 250870. I pushed a fix for that in CURRENT in r368237. It?s scheduled to go into stable/12 sometime next week, but it?d be good to know that it fixes your problem too before I merge it. In other words: can you test a recent CURRENT? It?s likely fixed there, and if it?s not I may be able to fix it quickly. Best regards, Kristof