On Wed, Oct 16, 2019 at 09:34:05PM +0200, Marco Elver wrote: > On Wed, 16 Oct 2019 at 20:44, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > > > + /* > > > + * Disable interrupts & preemptions, to ignore races due to accesses in > > > + * threads running on the same CPU. > > > + */ > > > + local_irq_save(irq_flags); > > > + preempt_disable(); > > > > Is there a point to that preempt_disable() here? > > We want to avoid being preempted while the watchpoint is set up; > otherwise, we would report data-races for CPU-local data, which is > incorrect. Disabling IRQs already very much disables preemption. There is absolutely no point in doing preempt_disable() when the whole section already runs with IRQs disabled.