Messages in this thread | | | From | Lai Jiangshan <> | Date | Tue, 26 May 2020 12:31:00 +0800 | Subject | Re: [RFC PATCH V2 4/7] x86/hw_breakpoint: Prevent data breakpoints on user_pcid_flush_mask |
| |
On Tue, May 26, 2020 at 12:21 PM Andy Lutomirski <luto@kernel.org> wrote: > > On Mon, May 25, 2020 at 6:42 PM Lai Jiangshan <laijs@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 <rostedt@goodmis.org> Masami Hiramatsu <mhiramat@kernel.org>
| |