qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v4] Stop VM on ENOSPC error.


From: Gleb Natapov
Subject: Re: [Qemu-devel] [PATCH v4] Stop VM on ENOSPC error.
Date: Tue, 20 Jan 2009 17:31:59 +0200

On Tue, Jan 20, 2009 at 02:57:28PM +0000, Ian Jackson wrote:
> Gleb Natapov writes ("Re: [Qemu-devel] [PATCH v4] Stop VM on ENOSPC error."):
> > On Tue, Jan 20, 2009 at 02:01:21PM +0000, Ian Jackson wrote:
> > > Are we sure that the ide layer is the right place to do this ?
> > > Perhaps it would be better to do it in block.c.  That way it would
> > > seamlessly affect scsi too and other kinds of weird block devices
> > > on other platforms.
> ...
> > I thought about it and I see only two places where this can be done. In
> > ide/scsi/pv-block layer or in individual block implementations
> > (qcow,raw, etc). The problem doing it in generic block.c layer is that
> > how should it handle errors during blocking writes? It can't return
> > error to the caller and it can't wait inside the function. Doing this in
> > the ide layer allows for error handling flexibility that this patch
> > provides.
> 
> Hrm, yes, I see.
> 
> We could abolish the blocking calls.  Or rather, we could say that a
> device emulation which wants the stop-on-enospc behaviour must never
> make the blocking calls.
> 
I would like to abolish the blocking calls from all file formats, but in
reality it is almost impossible. Qcow2 metadata updates is a big mess to
do asynchronously. The best thing we can do is to move it to another thread.

So are you OK with my current approach?

--
                        Gleb.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]