[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] trigger an interrupt in HVM
>From: James Harper >Sent: 2008年8月21日 10:32 > >The various subsystems (xennet, xenvbd) hook onto the same IRQ as the >PCI device. When the PCI device gets an IRQ, signalling that an event >channel has been set, and the event channel is for one of the subsystem >devices, it tells windows that the IRQ wasn't handled, so windows then >tries the other devices. Same IRQ as which PCI device? For Linux HVM, a dummy PCI device is exposed and a platform-pci driver is installed within Linux HVM. When it accepts interrupt being event pending, it then invokes into each FE driver directly which is bound to xenbus. It seems that in your case xenbus is not present at all, and thus each FE driver is still installed into existing sub-system of same class, and then you're trying to find a communication channel between dummy PCI driver and each FE which can't be done by simple function call and is done by irq sharing by far, is that true? Maybe to install FE driver onto xen bus type is easier, as the natural layered function call is then available like in Linux side. I guess I may still miss something here... :-( Back to your question. It's viable but simply setting evtchn_upcall_pending is not enough, as it's not checked at each VM resume path. By far event pending caused interrupt injection is only triggered from a real event send operation. One option you may try is to use inter-domain event channel between PCI driver and each BE driver. I guess inter- domain binding should allow for remote domain equal to local one, and then you can simply use notify_remote_via_evtchn to trigger an injection. Thanks Kevin _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |