Re: [patch V4 part 3 09/29] x86/entry/32: Provide macro to emit IDT entry stubs

From: Thomas Gleixner
Date: Thu May 14 2020 - 10:08:49 EST


Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> writes:
> ----- On May 14, 2020, at 12:31 AM, Andy Lutomirski luto@xxxxxxxxxx wrote:
>> On Wed, May 13, 2020 at 6:44 PM Mathieu Desnoyers
>> <mathieu.desnoyers@xxxxxxxxxxxx> wrote:
>> They're needed for all entries except SYSCALL, but they're hidden
>> inside helpers in many cases.
>
> Indeed, on x86-32 the macro SAVE_ALL contains cld. That architecture
> appears to be OK.
>
> What I am concerned about is the idtentry, idtentry_mce_db,
> and idtentry_df macros introduced in entry_64.S by this series.
> Those are supposed to be technically equivalent to the prior
> code, which indeed has the ASM_CLAC but no "cld".
>
> So maybe the cld happens to be hidden elsewhere, but I'm clearly
> missing it ? Or is it not needed for some reason ?

It's needed and it is there where it was forever in error_entry and
paranoid_entry.

It probably makes sense to stick it right after the CLAC.

Thanks,

tglx