WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] rendezvousing all physical CPUs

To: "Keir Fraser" <keir@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] rendezvousing all physical CPUs
From: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Date: Fri, 01 Dec 2006 08:16:40 +0000
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 01 Dec 2006 00:15:02 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C194BD74.54FD%keir@xxxxxxxxxxxxx>
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <456F116D.76E4.0078.0@xxxxxxxxxx> <C194BD74.54FD%keir@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>> Keir Fraser <keir@xxxxxxxxxxxxx> 30.11.06 17:55 >>>
>On 30/11/06 16:14, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:
>
>> Will it be acceptable to create hypercall sub-functions (would probably go
>> into the platform group, but should be architecture independent) to allow
>> Dom0 to halt all physical CPUs but the current one, and later restart them?
>> Or should it rather be a single call with an event-channel based call back
>> to carry out the operation that must be protected?
>
>How about providing the linear address of a chunk of dom0 code that Xen
>should run in ring 0 with CPUs in a particular configuration? We could
>provide flags to represent useful configurations: e.g., run on all CPUs
>atomicaly, run on CPU0 only and quiesce others, etc.

Hmm??? I would have to question why dom0 currently gets run in ring 1 then.

I would at best consider allowing the guest to pass a batch of operations that
it wants carried out - I/O memory accesses (normal RAM not allowed), MSR
reads/writes, port I/O. However, for the specific case of the RNG, PCI config
space accesses would also need to be supported - while they can be reduced
to iomem or port accesses, abstracting this out from the requester and from
Xen would require some thought.

>As you say this could be used for things arguably more useful than this RNG
>example, like microcode updates and maybe even the MTRR updates could be
>done in dom0 too, which would be very nice. :-)

While the RNG example may seem odd or unimportant, the point is that
currently this doesn't present a problem only because apparently no-one
but dom0 can actually see (physical) BIOS memory space (and hence depend
on its contents). I wonder if that is a proper assumption for I/O domains
currently and/or long term, since XEN_DOMCTL_iomem_permission allows
doing such.

Certainly, I agree that using this for MTRR handling (along with microcode
updating) if feasible would be very handy maintenance wise.

Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>