RE: [PATCH 1/2] x86/traps: call cond_local_irq_disable before returning from exc_general_protection and math_error

From: Thomas Tai
Date: Fri Apr 09 2021 - 09:09:23 EST


> -----Original Message-----
> From: Alexandre CHARTRE <alexandre.chartre@xxxxxxxxxx>
> Sent: April 9, 2021 5:06 AM
> To: Thomas Tai <thomas.tai@xxxxxxxxxx>; tglx@xxxxxxxxxxxxx;
> mingo@xxxxxxxxxx; bp@xxxxxxxxx; x86@xxxxxxxxxx
> Cc: sean.j.christopherson@xxxxxxxxx; luto@xxxxxxxxxxxxxx;
> jarkko@xxxxxxxxxx; bp@xxxxxxx; jethro@xxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 1/2] x86/traps: call cond_local_irq_disable before
> returning from exc_general_protection and math_error
>
>
> On 4/8/21 7:28 PM, Thomas Tai wrote:
> > This fixes commit 334872a09198 ("x86/traps: Attempt to fixup
> exceptions
> > in vDSO before signaling") which added return statements without
> calling
> > cond_local_irq_disable(). According to commit ca4c6a9858c2
> > ("x86/traps: Make interrupt enable/disable symmetric in C code"),
> > cond_local_irq_disable() is needed because the ASM return code no
> > longer disables interrupts. Follow the existing code as an example to
> > use "goto exit" instead of "return" statement.
> >
> > Signed-off-by: Thomas Tai <thomas.tai@xxxxxxxxxx>
> > ---
> > arch/x86/kernel/traps.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
>
>
> Reviewed-by: Alexandre Chartre <alexandre.chartre@xxxxxxxxxx>

Thank you Alex.

Thomas

>
> And it is probably worth adding a 'Fixes:' tag:
>
> Fixes: 334872a09198 ("x86/traps: Attempt to fixup exceptions in vDSO
> before signaling")
>
> alex.