qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Pavel Dovgaluk <Pavel.Dovgaluk@ispras.ru>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 4/4] events doubts
Date: Wed, 7 Oct 2015 10:52:01 +0200	[thread overview]
Message-ID: <5614DD31.4080000@redhat.com> (raw)
In-Reply-To: <35633.6639299572$1444206177@news.gmane.org>



On 07/10/2015 10:21, Pavel Dovgaluk wrote:
> There are two kinds of events:
> - read from the log and injected immediately (user input, network input)
> - read from the log and wait for corresponding event in the queue (BH)
> 
> We cannot inject BH event immediately because we do not have any information
> about callback

Actually we do (indirectly, through aio_bh_call).  But that may not be
the central issue, because...

> and to preserve consistency - BH cannot be processed before
> it is scheduled by qemu core.

... you are processing them differently anyway between record mode
(where the BH is scheduled by the core) and replay (where the BH is
called directly).

In fact, I don't understand what introduces the difference between
record and replay that requires special handling of ptimers' bottom
halves.  In both cases, the ptimer triggers at the desired time (based
on checkpoints) and then the bottom half is called as soon as possible.
 Why is a separate async event necessary?

Because we only care about bottom halves from ptimers, their order
should be the same for both record and replay.

If bottom halves async events could be removed, that would simplify a
lot the code, and it would make it a lot easier to understand for me.

Paolo

  parent reply	other threads:[~2015-10-07  8:52 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-06 20:00 [Qemu-devel] [RFH PATCH 0/4] record/replay fixups and doubts Paolo Bonzini
2015-10-06 20:00 ` [Qemu-devel] [PATCH 1/4] replay: generalize ptimer event to bottom halves Paolo Bonzini
2015-10-07  7:53   ` Pavel Dovgaluk
2015-10-06 20:00 ` [Qemu-devel] [PATCH 2/4] more replay fixes Paolo Bonzini
2015-10-06 20:13   ` Eric Blake
2015-10-07  8:11   ` Pavel Dovgaluk
2015-10-06 20:00 ` [Qemu-devel] [PATCH 3/4] why is runstate_is_running needed? Paolo Bonzini
2015-10-07  8:14   ` Pavel Dovgaluk
     [not found]   ` <22126.3941414238$1444205724@news.gmane.org>
2015-10-07  8:46     ` Paolo Bonzini
2015-10-07  9:37   ` Pavel Dovgaluk
2015-10-06 20:00 ` [Qemu-devel] [PATCH 4/4] events doubts Paolo Bonzini
2015-10-07  8:21   ` Pavel Dovgaluk
     [not found]   ` <35633.6639299572$1444206177@news.gmane.org>
2015-10-07  8:52     ` Paolo Bonzini [this message]
2015-10-07  9:50       ` Pavel Dovgaluk
2015-10-07 10:23         ` Paolo Bonzini
2015-10-07 10:42           ` Pavel Dovgaluk
2015-10-07 10:48             ` Paolo Bonzini
2015-10-07 10:51               ` Pavel Dovgaluk
2015-10-07 14:59                 ` Paolo Bonzini
2015-10-13  8:10 ` [Qemu-devel] [RFH PATCH 0/4] record/replay fixups and doubts Pavel Dovgaluk
2015-10-13 16:39   ` Paolo Bonzini
2015-10-23  7:28 ` Pavel Dovgaluk
2015-10-23  8:12   ` Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5614DD31.4080000@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=Pavel.Dovgaluk@ispras.ru \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).