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

Re: [Xen-devel] radeon in dom0/ivtv in domU: irq 16 nobody cared



On 04/13/2010 12:10 PM, Konrad Rzeszutek Wilk wrote:
>> Does the kernel get to know about the passed-through irqs?  I was
>> thinking that at pass-through time it would install the handler in dom0
>> on the irq (and all other domains sharing the irq), and then the handler
>> could do that hypercall and return IRQ_HANDLED / IRQ_NONE accordingly.
>>     
> That was my other thought. But that means that the handler has to
> do a hypercall - which I thought is a bit too heavy handed considering we 
> only need
> to know whether it is shared only once.

It could just return IRQ_HANDLED unconditionally, without doing the
hypercall.  Remember you also need it in the domU and any other domU
using the same GSI.

>  The fake irq handler gets
> disabled if the domain is turned off/pci hotplug removed.
>   

Yep.

> Currently the fake IRQ handler is installed on the IRQ that is requested
> by the guest. So if the IRQ is not shared in Dom0, it still gets
> inserted in (and it won't receive any interrupts since that IRQ line is
> not shared with the domain 0).
>   

Just for clarity's sake, you mean GSI for each instance of IRQ here, right?

>> Hrm.  You could instrument Xen to see who's masking the interrupt.
>>     
> <nods>Right now I am, digging through code to figure out how to make this
> happen without inserting to much code in the handler which would have
> slowed the machine to a crawl.
>   

I was thinking of something very dumb and ad-hoc, like putting an
explicit "if (gsi == X && masking) print something".

    J

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


 


Rackspace

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