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] Possible bug with pass-through hot-plug?

To: Simon Horman <horms@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] Possible bug with pass-through hot-plug?
From: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>
Date: Thu, 15 Oct 2009 16:02:59 +0200
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 15 Oct 2009 07:03:24 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=xfROIpD5FAl+PPLAbvgsisYZh2mXtrbwvcJgezcEgsc=; b=Hi2T7AvY5jZoWCfcMsRzErQEIfofMwGyvxwTk/CFhQPpD94aP8YqKwBAq3+gN4tQri ug2CgxMDea/tgobney5VvKqcfE3NkFNBosEtnYAmAfN0vLl59zEkDSR71+Zblo5UaXjl D1KbDIwNiX9f7o6Wrftql9+WB39Q3EyIAaB6E=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=O5dPEp7Z9TKvgalBN8Z/uuFt9hgN2ML5/D3P/81ahXLRU0rjK8Dj/VNzD5vEXm2y5E Df42VmyXUz5ccAaH+Q+Ty3nI5w42ZRiM4tMZSF6fnkWKloA7OkTyi8GMaOGKITaoTOJj KAHLNakWjfb+lvKJXTZsRmgTJi+iYo98R7qPM=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20091015110632.GA14946@xxxxxxxxxxxx>
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: <20091009120927.GA31495@xxxxxxxxxxxx> <20091010014127.GB22324@xxxxxxxxxxxx> <8686c3cd0910110257oa841842q2ed87f6b0f5b7a35@xxxxxxxxxxxxxx> <20091012223616.GC9072@xxxxxxxxxxxx> <8686c3cd0910130208k7b9b0feva576864c9d819737@xxxxxxxxxxxxxx> <20091013094345.GA16712@xxxxxxxxxxxx> <8686c3cd0910130252m6a57388cv8b4d5211a14a4998@xxxxxxxxxxxxxx> <20091015093107.GA11293@xxxxxxxxxxxx> <8686c3cd0910150238h3d79d81dse8ee1ecb8f5350f2@xxxxxxxxxxxxxx> <20091015110632.GA14946@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Well, i don't have a patch for it, as i'm not that skilled with
writing ASL code for the DSDT.
When i tried to change the levle interrupt to edge, it didn't work,
although i though it should work, so it might be a bug i wrote.

Bottom line, if you are skilled enough to write a "smarter" device
search code for the DSDT - you should try it. I think that will solve
it. If you don't think you'll be able to pull it off, i can try to
prepare a patch, but it's not my sepciality... :)

What do u think we should do to solve it?

On Thu, Oct 15, 2009 at 1:06 PM, Simon Horman <horms@xxxxxxxxxxxx> wrote:
> On Thu, Oct 15, 2009 at 11:38:39AM +0200, Tom Rotenberg wrote:
>> Simon,
>>
>> i'm glad you were able to re-produce it :)
>>
>> About the bug, i suspect that the code in the virtual DSDT, which
>> "checks" which device was hot-plugged, is really not efficient, as it
>> needs to go over all sltos prior to the new assigned slot before
>> notifying the device. This means that if the slot number is 0x14, then
>> the 'if' clause in the dsdt, needs about 20*8=160 if statements before
>> it's notifying, and this what i think is causing the problem.
>> Especially, because the GPE interrupt is defined as level interrupt.
>>
>> This bug can be fixed, using one of the followings:
>> 1. Improve the code in the virtual DSDT (e.g.: doing some sort of
>> 'binary-search' to see which device should be notified. This will
>> reduce the number of 'if' clause to evaluate from 160 to ~5)
>> 2. Change the interrupt to edge interrupt, and see if it helps
>>
>> What do u say?
>
> It sounds worth investigating. do you want to come up with a patch?
>
>

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