[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] PCI passthrough with stubdomain
On Fri, Sep 23, 2016 at 04:51:33PM +0200, Samuel Thibault wrote: > Marek Marczykowski-Górecki, on Fri 23 Sep 2016 16:25:41 +0200, wrote: > > Toolstack during (stub)domain startup setup two things, mostly > > asynchronously: > > 1. pciback/pcifront (through standard xenstore entries) > > 2. instruct qemu to attach device (by writing "pci-ins" to > > device-model/xxx/command) > > Ah, since pcifront_watches runs in a separate thread, it may not have > called init_pcifront before qemu calls libpci, i.e. pcifront_scan. Yes, exactly. > I'd say that's where the fix should be: make pcifront_scan wait for > init_pcifront to be done. It's however not so simple: we want to make > pcifront_scan do nothing if no pciback is to be launched. My memory is > rusty: is there something we are sure will show up in the xenstore when > a pciback is to be launched? If so, pcifront_scan could do this: wait > for pcifront_watches to have checked for the potential presence of > pciback. If pciback is not to be started, just do nothing; if pciback is > to be started, wait for init_pcifront to have been called by > pcifront_watches. Then it will find the devices. Ok. So, two questions: 1. How to do this? ;) I.e. what synchronization primitives are available in mini-os? Just pthread_mutex_lock/unlock? 2. Wouldn't the same problem be with other stubdomain implementations? Like Linux + qemu-xen or rumprun + qemu-xen? At least in Linux case pcifront driver will also needs some time for initialization... -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? Attachment:
signature.asc _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |