| From | Andy Lutomirski <> | Date | Tue, 19 May 2020 13:12:35 -0700 | Subject | Re: [patch V6 13/37] x86/entry: Switch page fault exception to IDTENTRY_RAW |
| |
On Fri, May 15, 2020 at 5:10 PM Thomas Gleixner <tglx@linutronix.de> wrote: > > > Convert page fault exceptions to IDTENTRY_RAW: > - Implement the C entry point with DEFINE_IDTENTRY_RAW > - Add the CR2 read into the exception handler > - Add the idtentry_enter/exit_cond_rcu() invocations in > in the regular page fault handler and use the regular > idtentry_enter/exit() for the async PF part. > - Emit the ASM stub with DECLARE_IDTENTRY_RAW > - Remove the ASM idtentry in 64bit > - Remove the CR2 read from 64bit > - Remove the open coded ASM entry code in 32bit > - Fixup the XEN/PV code > - Remove the old prototypes >
Acked-by: Andy Lutomirski <luto@kernel.org>
although if you make the irq_enter_cond_rcu() mode unconditional, then this comment can go away too:
> + /* > + * Entry handling for valid #PF from kernel mode is slightly > + * different: RCU is already watching and rcu_irq_enter() must not > + * be invoked because a kernel fault on a user space address might > + * sleep. > + * > + * In case the fault hit a RCU idle region the conditional entry > + * code reenabled RCU to avoid subsequent wreckage which helps > + * debugability. > + */ > + rcu_exit = idtentry_enter_cond_rcu(regs);
--Andy
|