Re: [patch V4 part 3 04/29] x86/traps: Make interrupt enable/disable symmetric in C code

From: Thomas Gleixner
Date: Thu May 07 2020 - 13:14:30 EST


Alexandre Chartre <alexandre.chartre@xxxxxxxxxx> writes:

> On 5/5/20 3:43 PM, Thomas Gleixner wrote:
>> Traps enable interrupts conditionally but rely on the ASM return code to
>> disable them again. That results in redundant interrupt disable and trace
>> calls.
>>
>> Make the trap handlers disable interrupts before returning to avoid that,
>> which allows simplification of the ASM entry code.
>>
>> Originally-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
>> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>>
>> ---
>> arch/x86/kernel/traps.c | 28 +++++++++++++++++++---------
>> arch/x86/mm/fault.c | 15 +++++++++++++--
>> 2 files changed, 32 insertions(+), 11 deletions(-)
>>
>
> So this patch makes C trap handlers disable interrupts on return but there's no
> change to the ASM entry code, which will still (also) disable interrupts. I suppose
> this is cleaned up in a next patch. So it's worth mentioning that the "simplification
> of the ASM entry code" is not in this patch.

I thought that was expressed by:

>> which allows simplification of the ASM entry code.

but yeah it's ambigous. Will clarify.

Thanks,

tglx