On Fri, Mar 17, 2023 at 02:32:28PM -0700, H. Peter Anvin wrote: > The purpose of separate stacks for NMI, #DB and #MC *in the kernel* > (remember that user space faults are always taken on stack level 0) is > to avoid overflowing the kernel stack. #DB in the kernel would imply > the use of a kernel debugger. Perf (and through it bpf) also has access to #DB. They can set breakpoints on kernel instructions/memory just fine provided permission etc.