Re: [PATCH] x86/head: Refactor 32-bit pgtable setup

From: Ingo Molnar
Date: Sun Dec 18 2016 - 03:45:38 EST



* Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> wrote:

> On 12/08/2016 11:33 PM, Ingo Molnar wrote:
> > * Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> wrote:
> >
> >> The new Xen PVH entry point requires page tables to be setup by the
> >> kernel since it is entered with paging disabled.
> >>
> >> Pull the common code out of head_32.S so that mk_early_pgtbl_32 can be
> >> invoked from both the new Xen entry point and the existing startup_32
> >> code.
> >>
> >> Convert resulting common code to C.
> >>
> >> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
> >> ---
> >> This is replacement for https://lkml.org/lkml/2016/10/14/434, with
> >> assembly code re-written in C as requested by Ingo.
> >>
> >>
> >> arch/x86/include/asm/pgtable_32.h | 32 ++++++++++
> >> arch/x86/kernel/head32.c | 62 +++++++++++++++++++
> >> arch/x86/kernel/head_32.S | 122 +++-----------------------------------
> >> 3 files changed, 101 insertions(+), 115 deletions(-)
> > Whee, I love it! And the code is so much more readable!
> >
> > Did you have any particular robustness problems (difficult to resolve crashes)
> > while developing it, or was it reasonably straightforward to do?
>
> There was nothing particularly difficult beyond understanding current
> code. That, of course, is not to say that there were no crashes but
> developing this on a guest gives you pretty good insight into why/where
> you crashed.
>
> This was tested on bare-metal (in case you are wondering), but obviously
> more testing is always good.

Ok, cool!

Would you like to carry this with your other Xen dependencies? If yes:

Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>

If not then I can pick it up and get it to Linus in v4.10.

Thanks,

Ingo