> Date: Fri, 7 Jul 2023 17:56:42 +0200 > From: Manuel Bouyer <bou...@antioche.eu.org> > > On Fri, Jul 07, 2023 at 01:11:54PM +0000, Taylor R Campbell wrote: > > - The magic numbers for debug.crashme.spl_spinout are for evbarm. > > On x86, use IPL_SCHED=7, IPL_VM=6, and IPL_SOFTCLOCK=1.
Correction: IPL_SOFTCLOCK=2. > > 1. cpuctl offline 0 > > sleep 20 > > cpuctl online 0 > > With this I get a panic on Xen: > [ 225.4605386] panic: kernel diagnostic assertion "kpreempt_disabled()" > failed: file "/dsk/l1/misc/bouyer/HEAD/clean/src/sys/kern/kern_heartbeat.c", > line 158 > [...] > [ 53.5704682] panic: kernel diagnostic assertion "kpreempt_disabled()" > failed: file "/dsk/l1/misc/bouyer/HEAD/clean/src/sys/kern/kern_heartbeat.c", > line 158 This was a mistake that arose because I was testing on aarch64 where kpreempt_disabled() is always true. Update and try again, please! sys/kern/kern_heartbeat.c 1.2 sys/kern/subr_xcall.c 1.36 > > 4. sysctl -w debug.crashme_enable=1 > > sysctl -w debug.crashme.spl_spinout=1 # IPL_SOFTCLOCK > > # verify system panics after 15sec > > my sysctl command did hang, but the system didn't panic Right -- I made a mistake in my call for testing. On x86, IPL_SOFTCLOCK is 2, not 1, which is IPL_PREEMPT, a special ipl that doesn't apply here. So use this instead on x86: sysctl -w debug.crashme.spl_spinout=2 (Not sure if it's different on Xen -- if it is, use whatever IPL_SOFTCLOCK is there.) > > 5. sysctl -w debug.crashme_enable=1 > > sysctl -w debug.crashme.spl_spinout=6 # IPL_SCHED > > # verify system panics after 15sec > > This one did panic Great! > > 6. cpuctl offline 0 > > sysctl -w debug.crashme_enable=1 > > sysctl -w debug.crashme.spl_spinout=1 # IPL_SOFTCLOCK > > # verify system panics after 15sec > > my sysctl command did hang, but the system didn't panic Same as with (4), use 2 instead of 1 here (or whatever is the right value on Xen). > > 7. cpuctl offline 0 > > sysctl -w debug.crashme_enable=1 > > sysctl -w debug.crashme.spl_spinout=5 # IPL_VM > > # verify system panics after 15sec > > and this one did panic Great, thanks!