[RFC PATCH -next V3 4/6] arm64: add copy_{to, from}_user to machine check safe
Robin Murphy
robin.murphy at arm.com
Tue Apr 12 10:17:58 PDT 2022
On 12/04/2022 6:08 pm, Robin Murphy wrote:
[...]
>> @@ -62,7 +63,11 @@ SYM_FUNC_START(__arch_copy_from_user)
>> ret
>> // Exception fixups
>> -9997: cmp dst, dstin
>> +9997: mrs esr, esr_el1 // Check exception first
>> + and esr, esr, #ESR_ELx_FSC
>> + cmp esr, #ESR_ELx_FSC_EXTABT
>
> Should we be checking EC to make sure it's a data abort - and thus FSC
> is valid - in the first place? I'm a little fuzzy on all the possible
> paths into fixup_exception(), and it's not entirely obvious whether this
> is actually safe or not.
In fact, thinking some more about that, I don't think there should be
any need for this sort of logic in these handlers at all. The
fixup_exception() machinery should already know enough about the
exception that's happened and the extable entry to figure this out and
not bother calling the handler at all.
Thanks,
Robin.
More information about the linux-arm-kernel
mailing list