> From: Paolo Bonzini [mailto:pbonz...@redhat.com] > On 22/01/2015 09:53, Pavel Dovgalyuk wrote: > > This patch introduces bottom half event for replay queue. It saves the > > events > > into the queue and process them at the checkpoints and instructions > > execution. > > Which bottom halves must _not_ go through aio/qemu_bh_new_replay?
The block layer and migration internal ones. They should not be replayed because are used for simulator purposes and not for VM execution. > > > +QEMUBH *aio_bh_new_replay(AioContext *ctx, QEMUBHFunc *cb, void *opaque, > > + uint64_t id) > > id is superfluous, it can always be replay_get_current_step(). > > It seems to me that the device models can always use qemu_bh_new_replay. > There are few if any uses of qemu_bh_new outside device models. > Perhaps convert those to aio_bh_new, and make qemu_bh_new always do > special replay treatment? I've created some kind of design document. Then I'll probably leave these changes until that document review. Pavel Dovgalyuk