[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] [PATCH][RFC] pv-ops: fix shared irq device passthrough
Jeremy Fitzhardinge wrote: > On 10/26/09 18:32, Han, Weidong wrote: >>> Hm, not sure about this. The logic in __setup_irq already looks >>> pretty tortured, and I'd like to avoid touching it unless there's >>> definitively a bug in there. >>> >>> I think the right question is whether probe_irq() is really doing >>> the right test, and whether it could do something else instead? >>> >> Totally agree. The better way is to change probe_irq, therefore >> needn't touch kernel irq stuffs. probe_irq is just check if >> desc->action == NULL or not. The code is there for a long long time >> (from c/s 26 in linux-2.6.18-xen.hg). I don't know whether it can be >> replaced. >> > > Could you look into it? How many drivers do interrupt probing these > days anyway? I think we can safely not support ISA devices. > > J All devices will call probing_irq in startup_pirq, which bind pirq to event channel. But now probing_irq always returns false, then all pirqs are not shareable. In my system, a PCI NIC, an USB controller and an IDE interface device share the same IRQ 18. Because above reason, pirq 18 is set not shareable. So when I hide the PCI NIC, and assign it to guest, it fails in guest_bind_pirq, therefore the PCI NIC in guest cannot work, even impact the devices who share the IRQ 18. If don't want to change __setup_irq code like my patch does, current probing_irq is useless (always return false). The problem is there is almost no information in desc can be used in probing_irq if desc->action is NULL. Keir, do you have any ideas? Regards, Weidong _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |