xen-devel
Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor
To: |
"Nakajima, Jun" <jun.nakajima@xxxxxxxxx> |
Subject: |
Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor |
From: |
Jeremy Fitzhardinge <jeremy@xxxxxxxx> |
Date: |
Thu, 17 Sep 2009 10:34:51 -0700 |
Cc: |
Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>, "Yang, Sheng" <sheng.yang@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Dong, Eddie" <eddie.dong@xxxxxxxxx>, Keir Fraser <Keir.Fraser@xxxxxxxxxxxxx> |
Delivery-date: |
Thu, 17 Sep 2009 10:35:17 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<0B53E02A2965CE4F9ADB38B34501A3A1940C840B@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<C6D66994.14D6A%keir.fraser@xxxxxxxxxxxxx> <C6D6AEEA.14EBF%keir.fraser@xxxxxxxxxxxxx> <0B53E02A2965CE4F9ADB38B34501A3A1940C78A8@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <4AB12C1F.9080502@xxxxxxxx> <1253135571.3896.4873.camel@xxxxxxxxxxxxxxxxxxxxx> <4AB15707.20305@xxxxxxxx> <1253178985.16152.26.camel@xxxxxxxxxxxxxxxxxxxxxx> <0B53E02A2965CE4F9ADB38B34501A3A1940C840B@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Lightning/1.0pre Thunderbird/3.0b3 |
On 09/17/09 08:56, Nakajima, Jun wrote:
>> I very much expect that it'll need fixing/(re)implementing on both the
>> kernel and hypervisor side...
>>
> To me, leveraging the native MMU code, rather than using existing API/ABI,
> would simplify both the guest and hypervisor side if hardware MMU
> virtualization is present. For example:
> - today a 64-bit PV guest builds/switches page tables depending on the
> kernel/user mode. It's not required anymore.
>
The two pagetables are largely shared, so it really comes down to
maintaining an additional L4 page. If the domain is running in a HAP
container, then then the "kernel" pagetable would have proper U/S bit
its pagetable entries (ie, Xen wouldn't strip them off, or set global on
user mappings) and then loading a new pagetable would just mean
reloading cr3 with the kernel pagetable. In other words, we can still
do an efficient pagetable swap without needing to change the guest or
the ABI at all; the user pagetable would be unused and ignored, but that
isn't a huge burden.
> - we can automatically get large page support (2MB, 1GB)
>
Once the requirement to mark pagetable pages RO goes away, then it would
be easy to add large-page support.
> I thought pv_xxx_ps (such as pv_time, pv_cpu_ops, pv_mmu_ops, etc.) was
> designed to choose the right pv_ops accordingly depending on the features
> available.
>
Sure. It would be easy to either use new special-purpose just plain
native versions of those ops if that's the right thing to do; but it
would be nice if a current unmodified PV guest worked within a HVM
container and got at least some benefit from doing so. Also, pagetable
issues have repercussions beyond just the raw pagetable update functions.
Of course you can get both these features just by booting the kernel as
an hvm guest. But if we're talking about giving PV kernels some
benefits from hvm/hap hardware features, I think we should looking at it
from the perspective of starting with a PV kernel then adding
incremental changes.
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Xen: Hybrid extension patchset for hypervisor, Yang, Sheng
- [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Keir Fraser
- [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Keir Fraser
- [Xen-devel] RE: Xen: Hybrid extension patchset for hypervisor, Nakajima, Jun
- [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Jeremy Fitzhardinge
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Ian Campbell
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Jeremy Fitzhardinge
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Ian Campbell
- RE: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Nakajima, Jun
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor,
Jeremy Fitzhardinge <=
- RE: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Nakajima, Jun
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Jeremy Fitzhardinge
- Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Jeremy Fitzhardinge
Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Frank van der Linden
Re: [Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Yang, Sheng
[Xen-devel] Re: Xen: Hybrid extension patchset for hypervisor, Yang, Sheng
|
|
|