On Fri, May 15, 2020 at 5:10 PM Thomas Gleixner <[email protected]> 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 <[email protected]>

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

Reply via email to