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

Re: [Xen-devel] [PATCH V3 07/10] Introduce Xen PCI Passthrough, qdevice (1/3)



On Fri, 11 Nov 2011, Konrad Rzeszutek Wilk wrote:
> > > > +                hw_error("Internal error: Invalid write emulation "
> > > > +                         "return value[%d]. I/O emulator exit.\n", rc);
> > >
> > > Oh. I hadn't realized this, but you are using hw_error. Which is
> > > calling 'abort'! Yikes. Is there no way to recover from this? Say return 
> > > 0xfffff?
> > 
> > In qemu-xen-traditionnal, it was an exit(1). I do not know the
> > consequence of a bad write, and I can not return anythings. So I suppose
> > that the guest would know that somethings wrong only on the next read.
> > 
> > Instead of abort();, I can just do nothing and return. Or we could unplug
> > the device from QEMU.
> > 
> > Any preference?
> 
> I think this calls for an experiment. If Linux still functions if you 
> completly
> unplug the device, then I would say unplug it (b/c in most likelyhood the 
> reason
> you can't write is b/c the host has unplugged the device).

It would make sense to try to PCI hot-unplug the device, however
considering that it requires guest support, it cannot be used to safely
handle an error like this one. Also it requires some interactions that
might not be possible anymore at this point.
I would destroy the domain instead, using a graceful shutdown if
possible. Something similar to libxl_domain_shutdown.

_______________________________________________
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®.