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] [PATCH] HVM vcpu hotplug: Fix acpi method NTFY bug

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] [PATCH] HVM vcpu hotplug: Fix acpi method NTFY bug
From: "Liu, Jinsong" <jinsong.liu@xxxxxxxxx>
Date: Fri, 29 Jan 2010 15:32:51 +0800
Accept-language: en-US
Acceptlanguage: en-US
Cc: "Zheng, Shaohui" <shaohui.zheng@xxxxxxxxx>, "Ke, Liping" <liping.ke@xxxxxxxxx>, "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx>
Delivery-date: Thu, 28 Jan 2010 23:33:53 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C788398F.7F19%keir.fraser@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/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: <EB8593BCECAB3D40A8248BE0B6400A3835A4384E@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <C788398F.7F19%keir.fraser@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcqfEjBdAvKTlDZES9GP92/daWtXOgBn3NcBAABXF2A=
Thread-topic: [Xen-devel] [PATCH] HVM vcpu hotplug: Fix acpi method NTFY bug
Keir Fraser wrote:
> On 27/01/2010 05:33, "Liu, Jinsong" <jinsong.liu@xxxxxxxxx> wrote:
> 
>> HVM vcpu hotplug: Fix acpi method NTFY bug
>> 
>> Cancel define method NTFY by using decision_tree, it will block vcpu
>> add and result in other unpredicted error. The second reason is
>> method NTFY is not key path and no necessary using complicated
>> decision_tree to reduce scan time. The third reason is, the scan
>> loop defined by method PRSC is not necessary equal to the scan loop
>> defined by method NTFY, and not necessary equal to 2^n. 
>> 
>> Signed-off-by: Liu, Jinsong <jinsong.liu@xxxxxxxxx>
> 
> You'll have to point out how this fixes the NTFY method I'm afraid --
> the two methods look exactly equivalent to me, except the existing
> method should on average execute with far fewer compares, and hence
> looks preferable. 
> 
> And please don't send updates to dsdt.c in patches which update DSDT.
> I always re-generate it myself anyway, and it makes your patch 1000x
> bigger. 
> 
>  -- Keir

suppose
x = scan loop number defined at method PRSC
y = scan loop number defined at method NTFY
in original way, there are 2 implicit precondition to make it work right:
1). y = x
2). y = 2^n
however, these preconditions are not always be satisfied.
for example, if x > y, it will produce unexpected scan and block vcpu 
add/remove.

BTW, decision_tree() is too complicated to understand. it's used to produce 
dsdt.dsl middle code.
people need spend much time to image what's the temporary dsdt.dsl middle code 
like.
this is not good for maintain and debug.
for this reason, I'd like to change it back to normal for() loop, easy to 
understand and maintain.
(it's correct that decision_tree() will reduce scan loop greatly, for example, 
128 vcpus scan number will reduce from 64 to 7 times avg, however, it's not 
important since this code is not key path, seldom used).

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