On Tue, May 26, 2020 at 12:21 PM Andy Lutomirski <l...@kernel.org> wrote: > > On Mon, May 25, 2020 at 6:42 PM Lai Jiangshan <la...@linux.alibaba.com> wrote: > > > > The percpu user_pcid_flush_mask is used for CPU entry > > If a data breakpoint on it, it will cause an unwanted #DB. > > Protect the full cpu_tlbstate structure to be sure. > > > > There are some other percpu data used in CPU entry, but they are > > either in already-protected cpu_tss_rw or are safe to trigger #DB > > (espfix_waddr, espfix_stack). > > How hard would it be to rework this to have DECLARE_PERCPU_NODEBUG() > and DEFINE_PERCPU_NODEBUG() or similar?
I don't know, but it is an excellent idea. Although the patchset protects only 2 or 3 portions of percpu data, but there is many percpu data used in tracing or kprobe code. They are needed to be protected too. Adds CC: Steven Rostedt <rost...@goodmis.org> Masami Hiramatsu <mhira...@kernel.org>