Re: [PATCH v6 0/5] riscv: Introduce KASLR

From: Alexandre Ghiti
Date: Tue Jul 25 2023 - 03:08:20 EST


On Mon, Jul 24, 2023 at 4:32 PM Conor Dooley <conor.dooley@xxxxxxxxxxxxx> wrote:
>
> Hey Alex,
>
> On Sat, Jul 22, 2023 at 02:38:45PM +0200, Alexandre Ghiti wrote:
> > The following KASLR implementation allows to randomize the kernel mapping:
> >
> > - virtually: we expect the bootloader to provide a seed in the device-tree
> > - physically: only implemented in the EFI stub, it relies on the firmware to
> > provide a seed using EFI_RNG_PROTOCOL. arm64 has a similar implementation
> > hence the patch 3 factorizes KASLR related functions for riscv to take
> > advantage.
> >
> > The new virtual kernel location is limited by the early page table that only
> > has one PUD and with the PMD alignment constraint, the kernel can only take
> > < 512 positions.
>
> I gave this all a go today, it seems to do what it it says on the tin,
> and crashing my kernel does dump out an offset etc.
>
> Tested-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>

Great, thanks for testing!

>
> I'll hopefully get some time later in the week to go through the code.

I will be on holiday in 3 weeks, you have some time, no worries :)

Thanks again,

Alex

>
> Cheers,
> Conor.
>