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

Re: [Xen-devel] Windows Bug Check 0x101 issue



On Thu, 27 Mar 2008 14:20:32 +0900
Kouya Shimura <kouya@xxxxxxxxxxxxxx> wrote:

> Ian Jackson writes:
> > This one is much better but I still have a comment ...
> 
> Thank you for many comments. Actually I'm not good at qemu.
> How about the attached patch?
> 
> > > +static void ide_flush_cb(void *opaque, int ret)
> > > +{
> > > +    IDEState *s = opaque;
> > > +
> > > +    s->status = READY_STAT;
> > > +    ide_set_irq(s);
> > 
> > You need to check the return value (ret) and set an appropriate IDE
> > error status if the operation failed.  ide_abort_command may be of
> > some use.
> 
> This patch uses ide_abort_command(). 
> As for the failure case, it looks too much for me.
> I hope someone who is expert on the IDE fixes it.

If a flush fails you can't just just reply with an abrt as I said earlier,
many OS will then loop forever trying to finish the flush. flush cache
has unusual error reporting behaviour (see ATA-7). An abort means a cache
flush fail and to retry for further sectors, if you can't properly
emulate reporting block numbers back then you need to offline the virtual
device.

Alan

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