[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Possible bug with pass-through hot-plug?

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



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.