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

From: hpa
Date: Fri Oct 14 2016 - 15:06:47 EST


On October 14, 2016 11:44:18 AM PDT, Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> wrote:
>On 10/14/2016 02:31 PM, hpa@xxxxxxxxx wrote:
>> On October 14, 2016 11:05:12 AM PDT, Boris Ostrovsky
><boris.ostrovsky@xxxxxxxxxx> wrote:
>>> From: Matt Fleming <matt@xxxxxxxxxxxxxxxxxxx>
>>>
>>> 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 and into pgtable_32.S so that
>>> setup_pgtable_32 can be invoked from both the new Xen entry point
>and
>>> the existing startup_32 code.
>>>
>> And why does it need a separate entry point as opposed to the plain
>one?
>
>One reason is that we need to prepare boot_params before jumping to
>startup_{32|64}.
>
>When the guest is loaded (always in 32-bit mode) the only thing we have
>is a pointer to Xen-specific datastructure. The early PVH code will
>prepare zeropage based on that structure and then jump to regular
>startup_*() code.
>
>-boris

And why not just resume execution at start_32 then?
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.