xen-devel
Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation
To: |
Ingo Molnar <mingo@xxxxxxx> |
Subject: |
Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation |
From: |
Gerd Hoffmann <kraxel@xxxxxxxxxx> |
Date: |
Tue, 19 May 2009 15:21:08 +0200 |
Cc: |
Jeremy Fitzhardinge <jeremy@xxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, the arch/x86 maintainers <x86@xxxxxxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>, Jan Beulich <JBeulich@xxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>, "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> |
Delivery-date: |
Tue, 19 May 2009 06:23:22 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<20090519122623.GD14305@xxxxxxx> |
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: |
<4A0DFF78.6000501@xxxxxxxx> <20090515202250.0f1218ef@jbarnes-g45> <m1iqk1k708.fsf@xxxxxxxxxxxxxxxxx> <4A10EAC4.9070701@xxxxxxxx> <20090518085902.GE10687@xxxxxxx> <4A11A3F8.1010202@xxxxxxxx> <20090519095918.GA11790@xxxxxxx> <4A12A46A02000078000017E1@xxxxxxxxxxxxxxxxxx> <20090519110837.GA10548@xxxxxxx> <4A12A05C.6050004@xxxxxxxxxx> <20090519122623.GD14305@xxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Lightning/1.0pre Thunderbird/3.0b2 |
On 05/19/09 14:26, Ingo Molnar wrote:
* Gerd Hoffmann<kraxel@xxxxxxxxxx> wrote:
On 05/19/09 13:08, Ingo Molnar wrote:
Or, alternatively, the hypervisor can expose its own administrative
interface to manage MTRRs.
Guess what? Xen does exactly that. And the xen mtrr_ops
implementation uses that interface ...
No, that is not an 'administrative interface' - that is a guest
kernel level hack that complicates Linux, extends its effective ABI
dependencies and which has to be maintained there from that point
on.
There's really just three proper technical solutions here:
- either catch the lowlevel CPU hw ops (the MSR modifications, which
isnt really all that different from the mtrr_ops approach so it
shouldnt pose undue difficulties to the Xen hypervisor).
Devil is in the details.
The dom0 kernel might not see all physical cpus on the system. So Xen
can't leave the job of looping over all cpus to the dom0 kernel, Xen has
to apply the changes made by the (priviledged) guest kernel on any
(virtual) cpu to all (physical) cpus in the machine.
Which in turn means the "lowlevel cpu hw op" would work in a slightly
different way on Xen and native. Nasty.
That will
be maximally transparent and compatible, with zero changes needed
to the Linux kernel.
No, the linux kernel probably should do the wrmsr on one cpu only then.
- or introduce its own hypercall API based administration API,
without bothering the guest kernel with crap. Trivially patch Xorg
to make use of it and that's it.
I have serious doubts that this is going to fly with KMS.
Oops, the third "proper technical solutions" is missing.
cheers,
Gerd
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, (continued)
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jan Beulich
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jeremy Fitzhardinge
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jan Beulich
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Gerd Hoffmann
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Alan Cox
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation,
Gerd Hoffmann <=
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Gerd Hoffmann
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Gerd Hoffmann
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Ingo Molnar
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Gerd Hoffmann
- Re: [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jeremy Fitzhardinge
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jeremy Fitzhardinge
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Andi Kleen
- [Xen-devel] Re: [GIT PULL] xen /proc/mtrr implementation, Jeremy Fitzhardinge
|
|
|