Tom Ivar Helbekkmo <t...@hamartun.priv.no> writes: > Didn't go so well. My main machine does routing between several VLANs, > using Quagga to manage the routing, NPF and ALTQ for traffic management, > and OpenVPN for tunnels from remote devices, all the while offering a > number of network services internally. > > After updating to a fresh current, attempting to enable NPF will crash > the machine, as will starting OpenVPN. The latter causes a crash the > moment it tries to create a tun interface.
It's a little more complex than that. With NPF enabled, the machine will sometimes boot, sometimes not. It may hang just after enabling NPF, or it may get hung later in the boot process -- seemingly mostly while doing stuff with USB. Turning the machine fully off and on again before a reboot attempt seems to increase the chance of a successful boot, but it's still about fifty/fifty. If it does boot completely, it seems to be stable after that. OpenVPN, on the other hand, will reliably crash the system. I'm running openvpn-2.3.6nb2 from pkgsrc, compiled about a year ago. It's set up to create three tunnels, and to (like the rest of the system) route IPv4 and IPv6 over them. When it starts, the kernel immediately panics while handling a syscall number 5 for the openvpn process. The following copied by hand, because a recursive panic causes the attempt to dump core to disk to fail: panic: kernel diagnostic assertion "(kpreempt_disabled() || cpu_softintr_p() || ISSET(curlwp->l_pflag, LP_BOUND))" failed: file "/usr/src/sys/kern/subr_psref.c", line 291 passive references are CPU-local, but preemption is enabled and the caller is not in a softint or CPU-bound LWP Backtrace: vpanic() ch_voltag_convert_in() psref_release() pfil_run_arg.isra.0() if_initialize() if_attach() tun_clone_create() tunopen() cdev_open() spec_open() VOP_OPEN() vn_open() do_open() do_sys_openat() sys_open() syscall() This is with a NetBSD/amd64-current, updated from cvs yesterday. -tih -- Most people who graduate with CS degrees don't understand the significance of Lisp. Lisp is the most important idea in computer science. --Alan Kay