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-ia64-devel

[Xen-ia64-devel] SMP-g design notes

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] SMP-g design notes
From: Tristan Gingold <Tristan.Gingold@xxxxxxxx>
Date: Wed, 8 Mar 2006 10:33:50 +0100
Cc: jean-paul.pigache@xxxxxxxx
Delivery-date: Wed, 08 Mar 2006 09:30:37 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.5
[Comments are welcome]

SMP-guest (SMP-g) current design.

Because it is design time, here are some note about my SMP-g work.
The current patch is very small.  I tried only to bring-up SMP-g ASAP to catch 
more
SMP bugs.  Also I tried to miminize Linux kernel changes.

The only Linux kernel change is the way IPI are sent.  When running_on_xen, 
the write into
LSAPIC is replaced by a physdev_op hypercall.

The xen changes are:

* LID is virtualized.  In fact this was achieved with my vIOSAPIC patch.  I am 
planning
to modify this so that SMP-g can be done without vIOSAPIC.
The virtualized LID is ID=EID=vcpu_id.

* ACPI LSAPIC entries are enabled for dom0 and added for domU.
  For dom0, I have added a dom0_maxcpu= command line parameter to set the 
maximum number
  of dom0 vcpu.

* SAL_VECTOR_OS_BOOT_RENDEZ added to set iip and r1 of non-running vcpu.

* SAL wakeup descriptor added.

* physdev_op added to accept and deliver IPI as an interrupt.  It also handle 
vcpu start-up.

* ITC_DRIFT feature added to SAL descriptors.  This avoids clock 
synchronizations which
  can't be currently done since itc is not virtualized.

* Since VHPT is currently per cpu, there is no general SMP problems.

* SAL_CACHE_FLUSH is still a no-op.  Again, we should think about it.
  From what I read, it is called only inside the kernel to calibrate process 
migration.
  Currently it shouldn't hurt if we don't handle it.

* ptc.ga is a real problem: currently an IPI is sent in Xen to purge the VHPT.  
Performance
  may be very bad.  We should think about this.


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

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