Date: Thu, 30 Jan 2020 16:19:59 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 243711] dtrace immediately panics the system if compiled without SMP Message-ID: <bug-243711-227-Z3Gmn7bC3k@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-243711-227@https.bugs.freebsd.org/bugzilla/> References: <bug-243711-227@https.bugs.freebsd.org/bugzilla/>
index | next in thread | previous in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243711 --- Comment #3 from Mark Johnston <markj@FreeBSD.org> --- (In reply to alex_y_xu from comment #2) Ah, I think the snapshots have invariants-checking disabled, which would explain why you're not seeing the problem during boot. > I want to use a non-SMP kernel because I am on a single-CPU VM and I assume that no-SMP kernels are more efficient. Fair enough. Indeed, mtx_lock_spin() does nothing but disable interrupts in non-SMP FreeBSD kernels (and nothing if they are already disabled). Non-SMP kernels definitely aren't as well tested though. It looks like DTrace has been broken there basically forever: MAXCPU is 256 in kernel modules even when compiled without SMP: #if defined(SMP) || defined(KLD_MODULE) #ifndef MAXCPU #define MAXCPU 256 #endif #else #define MAXCPU 1 #endif ... and smp_rendezvous() and other kernel APIs use pass-by-value for cpuset_t's for a reason that is not clear to me. -- You are receiving this mail because: You are the assignee for the bug.help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243711-227-Z3Gmn7bC3k>
