Re: [PATCH v2 1/3] x86/KASLR: Update document about KERNEL_IMAGE_SIZE

From: Baoquan He
Date: Wed Oct 03 2018 - 04:43:45 EST


On 10/03/18 at 09:52am, Ingo Molnar wrote:
>
> * Baoquan He <bhe@xxxxxxxxxx> wrote:
>
> > Currently CONFIG_RANDOMIZE_BASE=y is default set, update the relevant
> > document about KERNEL_IMAGE_SIZE.
>
> Suggested wording:
>
> x86/KASLR: Update KERNEL_IMAGE_SIZE description
>
> Currently CONFIG_RANDOMIZE_BASE=y is set by default, which makes some of the
> old comments above the KERNEL_IMAGE_SIZE definition out of date. Update them
> to the current state of affairs.

Thanks, will update with this.

>
> > Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
> > ---
> > arch/x86/include/asm/page_64_types.h | 7 ++++---
> > 1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/arch/x86/include/asm/page_64_types.h b/arch/x86/include/asm/page_64_types.h
> > index 6afac386a434..2288ceabdb9c 100644
> > --- a/arch/x86/include/asm/page_64_types.h
> > +++ b/arch/x86/include/asm/page_64_types.h
> > @@ -61,9 +61,10 @@
> > /*
> > * Kernel image size is limited to 1GiB due to the fixmap living in the
> > * next 1GiB (see level2_kernel_pgt in arch/x86/kernel/head_64.S). Use
> > - * 512MiB by default, leaving 1.5GiB for modules once the page tables
> > - * are fully set up. If kernel ASLR is configured, it can extend the
> > - * kernel page table mapping, reducing the size of the modules area.
> > + * 1 GiB by default, leaving 1 GiB for modules once the page tables are
> > + * fully set up. If kernel ASLR is not configured, it can shrink the
> > + * kernel page table mapping to decrease the size of kernel area to 512
> > + * MiB, increase the size of the modules area to 1.5 GiB.
> > */
>
> I've prettified that comment some more:

Thanks, will use them.

>
> /*
> * Maximum kernel image size is limited to 1 GiB, due to the fixmap living
> * in the next 1 GiB (see level2_kernel_pgt in arch/x86/kernel/head_64.S).
> *
> * On KASLR use 1 GiB by default, leaving 1 GiB for modules once the
> * page tables are fully set up.
> *
> * If KASLR is disabled we can shrink it to 0.5 GiB and increase the size
> * of the modules area to 1.5 GiB.
> */
>
> > #if defined(CONFIG_RANDOMIZE_BASE)
> > #define KERNEL_IMAGE_SIZE (1024 * 1024 * 1024)
>
> BTW., while at it, shouldn't we make that:
>
> #ifdef CONFIG_RANDOMIZE_BASE

Yes, makes sense, will change.

>
> ?
>
> Thanks,
>
> Ingo