From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andi Kleen Subject: Re: [PATCH 2/4] [HVM] introduce CPU affinity for allocate_physmap call Date: 15 Aug 2007 13:18:10 +0200 Message-ID: References: <200708131459.31305.Christoph.Egger@amd.com> <20070813204947.GC1228@us.ibm.com> <46C2D1A8.1030001@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: In-Reply-To: <46C2D1A8.1030001@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Andre Przywara Cc: Christoph Egger , Ryan Harper , Keir Fraser , xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org "Andre Przywara" writes: > Ryan Harper wrote: > > One concern has been the static nature of the ACPI SRAT data versus the > > dynamic ability of the vcpu to cpu mapping. If the scheduler is > > migrating the guest vcpu to various cpus, then the SRAT information is > > likely to be incorrect. > I think this is a problem even for the native OSes when you think of > CPU- and/or memory-hotplugging. Although Linux can do CPU hotplugging, > AFAIK NUMA isn't currently considered in this process. IA64 (and I think PPC) Linux support node hotplug. Node hot unplug is currently missing because the memory hotunplug support is not finished yet. There is no interface to notify NUMA aware user space of topology changes though. x86 Linux currently doesn't but will assign new CPUs to existing nodes as reported in SRAT. > I think the > most feasible approach would be to rebuild all affected structures > when the hotplug event occurs. This will probably considered quite > rare and thus could be potentially more costly, so I this is not > something you want to do every time Xen decides to reschedule a > VCPU. In the current Linux implementation just report all nodes at boot up (even if they have little or no memory) and then you can add/remove CPUs to them as needed. When you migrate to another box with more nodes that likely won't work, but that could be probably made configurable. -Andi