qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC] block-trace Low Level Command Supporting Disk Int


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [RFC] block-trace Low Level Command Supporting Disk Introspection
Date: Wed, 15 May 2013 05:16:15 -0400 (EDT)

> > We don't need a way to pass data from before to after hooks, a simple
> > scan of a linked list will do.
> 
> So in this case the linked list is the way.

Point taken. :)

> > > Does the "if there was no room" part mean that the mirror is active only
> > > sometimes?
> > 
> > Yes, otherwise the guest can allocate arbitrary amounts of memory in the
> > host just by starting a few very large I/O operations.
> 
> I think I would rather throttle I/O in this case, i.e. requests wait
> until they can get the space. At least for a synchronous mirror we
> have to do something like this.

Yes, but this is still asynchronous.  The active part is just an optimization
to avoid write amplification (where small random writes require I/O of an entire
block as big as the bitmap granularity).

> > > And why even bother with a dirty bitmap for an active mirror? The
> > > background job that sequentially processes the whole image only needs a
> > > counter, no bitmap.
> > 
> > That's not enough for the case when the host crashes and you have to
> > restart the mirroring or complete it offline.
> 
> You're thinking of a persistent bitmap here? Makes sense then, I didn't
> think about that.

Yes.

Paolo



reply via email to

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