Re: [PATCH v3 09/10] x86: Convert mmu context ia32_compat into a proper flags field

From: Andy Lutomirski
Date: Wed Oct 07 2020 - 20:08:03 EST


On Sat, Oct 3, 2020 at 8:26 PM Gabriel Krisman Bertazi
<krisman@xxxxxxxxxxxxx> wrote:
>
> The ia32_compat attribute is a weird thing. It mirrors TIF_IA32 and
> TIF_X32 and is used only in two very unrelated places: (1) to decide if
> the vsyscall page is accessible (2) for uprobes to find whether the
> patched instruction is 32 or 64 bit. In preparation to remove the TI
> flags, we want new values for ia32_compat, but given its odd semantics,
> I'd rather make it a real flags field that configures these specific
> behaviours. So, set_personality_x64 can ask for the vsyscall page,
> which is not available in x32/ia32 and set_personality_ia32 can
> configure the uprobe code as needed.
>
> uprobe cannot rely on other methods like user_64bit_mode() to decide how
> to patch, so it needs some specific flag like this.

Acked-by: Andy Lutomirski<luto@xxxxxxxxxx>

There are still issues with vsyscall control, but they were
pre-existing and I'll try to get them fixed up.

--Andy