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] Hypervisor crash(!) on xl cpupool-numa-split

To: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Hypervisor crash(!) on xl cpupool-numa-split
From: Juergen Gross <juergen.gross@xxxxxxxxxxxxxx>
Date: Tue, 08 Feb 2011 06:43:43 +0100
Cc: Andre Przywara <andre.przywara@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Diestelhorst, Stephan" <Stephan.Diestelhorst@xxxxxxx>
Delivery-date: Mon, 07 Feb 2011 21:44:38 -0800
Dkim-signature: v=1; a=rsa-sha256; c=simple/simple; d=ts.fujitsu.com; i=juergen.gross@xxxxxxxxxxxxxx; q=dns/txt; s=s1536b; t=1297143826; x=1328679826; h=message-id:date:from:mime-version:to:cc:subject: references:in-reply-to:content-transfer-encoding; z=Message-ID:=20<4D50D80F.9000007@xxxxxxxxxxxxxx>|Date:=20 Tue,=2008=20Feb=202011=2006:43:43=20+0100|From:=20Juergen =20Gross=20<juergen.gross@xxxxxxxxxxxxxx>|MIME-Version: =201.0|To:=20George=20Dunlap=20<George.Dunlap@xxxxxxxxxxx om>|CC:=20Andre=20Przywara=20<andre.przywara@xxxxxxx>,=20 =0D=0A=20"xen-devel@xxxxxxxxxxxxxxxxxxx"=20<xen-devel@lis ts.xensource.com>,=0D=0A=20"Diestelhorst,=20Stephan"=20<S tephan.Diestelhorst@xxxxxxx>|Subject:=20Re:=20[Xen-devel] =20Hypervisor=20crash(!)=20on=20xl=20cpupool-numa-split |References:=20<4D41FD3A.5090506@xxxxxxx>=09<201102021539 .06664.stephan.diestelhorst@xxxxxxx>=09<4D4974D1.1080503@ ts.fujitsu.com>=09<201102021701.05665.stephan.diestelhors t@xxxxxxx>=09<4D4A43B7.5040707@xxxxxxxxxxxxxx>=20<4D4A72D 8.3020502@xxxxxxxxxxxxxx>=09<4D4C08B6.30600@xxxxxxx>=20<4 D4FE7E2.9070605@xxxxxxx>=09<4D4FF452.6060508@xxxxxxxxxxxx om>=20<AANLkTinoRUQC_suVYFM9-x3D00KvYofq3R=3DXkCQUj6RP@ma il.gmail.com>|In-Reply-To:=20<AANLkTinoRUQC_suVYFM9-x3D00 KvYofq3R=3DXkCQUj6RP@xxxxxxxxxxxxxx> |Content-Transfer-Encoding:=207bit; bh=7A+TNv7qbIWkzs7mfnQZRh2Okrsd4nwR9jtCDS95DzY=; b=hlB7nRmc7fENF/mla9hXPqmqqyzujb8fkMm1TiQYvWgnbD8NyU6+R31l CFtfyxWnY0KhdT3QeU2wnbiTYJ4kGEAAjSWryt+IWe/Gw1nb3IDoHc3wd uWIVkF7H7mnUjkptrmwH2KWu0QYzNUNfXdKBqBBUXBRD7G6GfOJrFpqfj 6Y34yYpRmp1SicaiMun1SsbsnUXtlnpL4P5Z9qj7KUXTG6MmxsrdjkFMl g7xMP7/Er9aWJOinlK3ZLogLFLwWi;
Domainkey-signature: s=s1536a; d=ts.fujitsu.com; c=nofws; q=dns; h=X-SBRSScore:X-IronPort-AV:Received:X-IronPort-AV: Received:Received:Message-ID:Date:From:Organization: User-Agent:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=SmGXXOZqSkyZKijv7PChx2UPYxcXw7JSXbzgHKhJS8opAhE6BBq+cGx2 E9s1GGVN9KlTjgSQsFxZ02ZdKnl88HCGPoMV2N8rv5DZrDOa2V3auSc3j ieErUMmkKJtbqNToyycU04QRd8+aOlgvs9co1bgqvjyTn2S7IBzON31oM HebArq1n3XyDPTLg73PPoTtIHzZUzTlYNe4d4c6AOj0F83MFIOjbl6IYT 3GpKXqOB03qoS84dWd7S8ksxTWkow;
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <AANLkTinoRUQC_suVYFM9-x3D00KvYofq3R=XkCQUj6RP@xxxxxxxxxxxxxx>
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>
Organization: Fujitsu Technology Solutions
References: <4D41FD3A.5090506@xxxxxxx> <201102021539.06664.stephan.diestelhorst@xxxxxxx> <4D4974D1.1080503@xxxxxxxxxxxxxx> <201102021701.05665.stephan.diestelhorst@xxxxxxx> <4D4A43B7.5040707@xxxxxxxxxxxxxx> <4D4A72D8.3020502@xxxxxxxxxxxxxx> <4D4C08B6.30600@xxxxxxx> <4D4FE7E2.9070605@xxxxxxx> <4D4FF452.6060508@xxxxxxxxxxxxxx> <AANLkTinoRUQC_suVYFM9-x3D00KvYofq3R=XkCQUj6RP@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.16) Gecko/20101226 Iceowl/1.0b1 Icedove/3.0.11
On 02/07/11 16:55, George Dunlap wrote:
Juergen,

What is supposed to happen if a domain is in cpupool0, and then all of
the cpus are taken out of cpupool0?  Is that possible?

No. Cpupool0 can't be without any cpu, as Dom0 is always member of cpupool0.


It looks like there's code in cpupools.c:cpupool_unassign_cpu() which
will move all VMs in a cpupool to cpupool0 before removing the last
cpu.  But what happens if cpupool0 is the pool that has become empty?
It seems like that breaks a lot of the assumptions; e.g.,
sched_move_domain() seems to assume that the pool we're moving a VM to
actually has cpus.

The move of VMs to cpupool0 is done only for domains which are dying.
If there are any active domains in the cpupool, removing the last cpu from
it will be denied.


While we're at it, what's with the "(cpu != cpu_moving_cpu)" in the
first half of cpupool_unassign_cpu()?  Under what conditions are you
anticipating cpupool_unassign_cpu() being called a second time before
the first completes?  If you have to abort the move because
schedule_cpu_switch() failed, wouldn't it be better just to roll the
whole transaction back, rather than leaving it hanging in the middle?

Not really. It could take some time until all vcpus have been migrated to
another cpu. In this case -EAGAIN is returned and the cpu is already
removed from the cpumask of valid cpus for that cpupool to avoid scheduling
of other vcpus on that cpu. Without cpu_moving_cpu there would be no
forward progress guaranteed.


Hmm, and why does RMCPU call cpupool_get_by_id() with exact==0?  What
could possibly be the use of grabbing a random cpupool and then trying
to remove the specified cpu from it?

This is a very good question :-)
I think this should be fixed. Seems to be a copy and paste error. I'll send a
patch.


Thanks for your thoughts,


Juergen

--
Juergen Gross                 Principal Developer Operating Systems
TSP ES&S SWE OS6                       Telephone: +49 (0) 89 3222 2967
Fujitsu Technology Solutions              e-mail: juergen.gross@xxxxxxxxxxxxxx
Domagkstr. 28                           Internet: ts.fujitsu.com
D-80807 Muenchen                 Company details: ts.fujitsu.com/imprint.html

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

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