[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 7/7] x86/pagewalk: Re-implement the pagetable walker



On 06/03/17 18:33, Andrew Cooper wrote:
> On 06/03/17 18:28, George Dunlap wrote:
>> On 27/02/17 14:03, Andrew Cooper wrote:
>>> The existing pagetable walker has complicated return semantics, which 
>>> squeeze
>>> multiple pieces of information into single integer.  This would be fine if 
>>> the
>>> information didn't overlap, but it does.
>>>
>>> Specifically, _PAGE_INVALID_BITS for 3-level guests alias _PAGE_PAGED and
>>> _PAGE_SHARED.  A guest which constructs a PTE with bits 52 or 53 set (the
>>> start of the upper software-available range) will create a virtual address
>>> which, when walked by Xen, tricks Xen into believing the frame is paged or
>>> shared.  This behaviour was introduced by XSA-173 (c/s 8b17648).
>>>
>>> It is also complicated to turn rc back into a normal pagefault error code.
>>> Instead, change the calling semantics to return a boolean indicating 
>>> success,
>>> and have the function accumulate a real pagefault error code as it goes
>>> (including synthetic error codes, which do not alias hardware ones).  This
>>> requires an equivalent adjustment to map_domain_gfn().
>>>
>>> Issues fixed:
>>>  * 2-level PSE36 superpages now return the correct translation.
>>>  * 2-level L2 superpages without CR0.PSE now return the correct translation.
>>>  * SMEP now inhibits a user instruction fetch even if NX isn't active.
>>>  * Supervisor writes without CR0.WP now set the leaf dirty bit.
>>>  * L4e._PAGE_GLOBAL is strictly reserved on AMD.
>>>  * 3-level l3 entries have all reserved bits checked.
>>>  * 3-level entries can no longer alias Xen's idea of paged or shared.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
>> Andy,
>>
>> Have you got this in a tree somewhere?  This doesn't seem to apply to
>> staging, and I don't think I'm going to be able to give it a proper
>> review without seeing the changes in-situ.  (Or if you're close to
>> reposting I'll wait for the repost.)
> 
> I do have some bits an pieces (although I am some of your acks on the
> earlier trivial patches.)

Yeah, patch 4 it seems has been checked in already, and because of that
I somehow got confused into thinking that more of them were checked in
when I was going through the series.  I'm about to head out tonight, but
I'll give Acks or Reviews to the earlier ones tomorrow when I come back in.

> This patch isn't going to change in any significant way, so here you go.
> 
> http://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/pagewalk-v1

Thanks.

 -George


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.