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