Messages in this thread | | | From | Andy Lutomirski <> | Date | Sun, 7 Jul 2019 08:10:24 -0700 | Subject | Re: [PATCH v2 5/7] x86/mm, tracing: Fix CR2 corruption |
| |
On Thu, Jul 4, 2019 at 1:03 PM Peter Zijlstra <peterz@infradead.org> wrote: > > Despire the current efforts to read CR2 before tracing happens there > still exist a number of possible holes: > > idtentry page_fault do_page_fault has_error_code=1 > call error_entry > TRACE_IRQS_OFF > call trace_hardirqs_off* > #PF // modifies CR2 > > CALL_enter_from_user_mode > __context_tracking_exit() > trace_user_exit(0) > #PF // modifies CR2 > > call do_page_fault > address = read_cr2(); /* whoopsie */ > > And similar for i386. > > Fix it by pulling the CR2 read into the entry code, before any of that > stuff gets a chance to run and ruin things.
Reviewed-by: Andy Lutomirski <luto@kernel.org>
Subject to the discussion as to whether this is the right approach at all.
| |