[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ad74b77d-2bbe-4137-c741-aa515881e0e7@oracle.com>
Date: Fri, 14 Oct 2016 15:18:47 -0400
From: Boris Ostrovsky <boris.ostrovsky@...cle.com>
To: hpa@...or.com, david.vrabel@...rix.com, JGross@...e.com
Cc: roger.pau@...rix.com, linux-kernel@...r.kernel.org,
xen-devel@...ts.xenproject.org,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, x86@...nel.org,
Matt Fleming <matt@...eblueprint.co.uk>
Subject: Re: [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup
On 10/14/2016 03:04 PM, hpa@...or.com wrote:
> On October 14, 2016 11:44:18 AM PDT, Boris Ostrovsky <boris.ostrovsky@...cle.com> wrote:
>> On 10/14/2016 02:31 PM, hpa@...or.com wrote:
>>> On October 14, 2016 11:05:12 AM PDT, Boris Ostrovsky
>> <boris.ostrovsky@...cle.com> wrote:
>>>> From: Matt Fleming <matt@...eblueprint.co.uk>
>>>>
>>>> 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?
I am not sure what start_32 is.
If you meant startup_32 then that's exactly what we do (for 32-bit
guests) once zeropage is set up.
-boris
-boris
Powered by blists - more mailing lists