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/
Home Products Support Community News


[Xen-devel] [PATCH] xl: fix broken cpupool-numa-split (part 2)

To: Juergen Gross <juergen.gross@xxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] xl: fix broken cpupool-numa-split (part 2)
From: Andre Przywara <andre.przywara@xxxxxxx>
Date: Sat, 29 Jan 2011 01:35:54 +0100
Cc: George Dunlap <george.dunlap@xxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
Delivery-date: Fri, 28 Jan 2011 16:35:57 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4D426189.1030001@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>
References: <4D41E547.5000902@xxxxxxx> <4D426189.1030001@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20101020 Thunderbird/3.0.9
On 01/28/2011 07:26 AM, Juergen Gross wrote:
On 01/27/11 22:36, Andre Przywara wrote:

the implementation of xl cpupool-numa-split is broken. It basically
deals with only one poolid, but there are two to consider: the one from
the original root CPUpool, the other from the newly created one.

Uhh, silly copy and paste error! I think it happened when I introduced
The correction is much easier. The root poolid is always 0.
Why do you save this value then?
    poolid = poolinfo[0].poolid;
Reading this made me think it can be an arbitrary value.

See attached patch.
Easier, but that only solves one part of the problem (not populating the newly created pool). The second bug still persists, because poolid is not zeroed out again after the first creation. So the second iteration will try to reuse the just assigned value and abort with an error.

Ian, please apply the attached patch on top of Jürgens one.

Before the creation and population of a new CPU pool we have to clear the poolid variable, which still contains the value from the previous iteration. This fixes the execution of xl cpupool-numa-split on machines with more than two nodes.

Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>

Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany

Attachment: xl_fix_numasplit_missing_poolid_reset.patch
Description: xl_fix_numasplit_missing_poolid_reset.patch

Xen-devel mailing list