[PATCH v2 11/12] ARM: wire up UEFI init and runtime support

Ard Biesheuvel ard.biesheuvel at linaro.org
Mon Nov 16 21:33:46 PST 2015


On 16 November 2015 at 20:48, Russell King - ARM Linux
<linux at arm.linux.org.uk> wrote:
> On Mon, Nov 16, 2015 at 08:04:00PM +0100, Ard Biesheuvel wrote:
>> OK. So you mean set TTBR to the zero page, perform the TLB flush and
>> only then switch to the new page tables?
>
> Not quite.
>
> If you have global mappings below TASK_SIZE, you would need this
> sequence when switching either to or from the UEFI page tables:
>
> - switch to another set of page tables which only map kernel space
>   with nothing at all in userspace.
> - flush the TLB.
> - switch to your target page tables.
>

Doh. I am so used to always having two TTBR's available, but indeed,
we shouldn't pull the rug from under our feet.

> As I say in response to one of your other patches, it's probably
> much easier to avoid any global mappings below TASK_SIZE.

Let me look into that.

Thanks,
Ard.



More information about the linux-arm-kernel mailing list