All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frederic Konrad <fred.konrad@greensocs.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Mark Burton <mark.burton@greensocs.com>,
	qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [RFC] Undeterministic behaviour with icount.
Date: Thu, 18 Jul 2013 17:06:15 +0200	[thread overview]
Message-ID: <51E80467.5020203@greensocs.com> (raw)
In-Reply-To: <51DD6574.5030901@redhat.com>

On 10/07/2013 15:45, Paolo Bonzini wrote:
> Il 08/07/2013 19:32, Frederic Konrad ha scritto:
>> Hi everybody,
>>
>> We get some issues with reverse execution caused by indeterminism.
>>
>> Something catched our attention:
>> static void icount_warp_rt(void *opaque), cpus.c:276
>>
>> We have the feeling that icount is synchronized with rt_clock, is that
>> possible?
> When the CPU is idle, yes.
>
> Note that the same thing happened before the series you linked.  This is
> the relevant code:
>
> -        /* Wait for either IO to occur or the next
> -           timer event.  */
> -        add = qemu_next_deadline();
> -        /* We advance the timer before checking for IO.
> -           Limit the amount we advance so that early IO
> -           activity won't get the guest too far ahead.  */
> -        if (add > 10000000)
> -            add = 10000000;
> -        delta += add;
> -        qemu_icount += qemu_icount_round (add);
>
> It was adding to the icount while waiting for the next timer event to
> happen.
>
>> According to this Paolo's series
>> <http://lists.gnu.org/archive/html/qemu-devel/2011-04/msg01271.html>
>> this must be called when the cpus are sleeping, but
>> I saw this called frequently during the execution, is that the expected
>> behaviour?
> What workload are you running?  For anything that is not CPU bound I'd
> expect that to be the case.
>
> Paolo
>
>> If not what's the best way to fix that?
Hi Paolo,

Thanks for your answer.

For the moment the workload is a kernel boot. We removed everything from the
board.

So if it's the case, vm_clock will run non deterministic and we can't 
replay.

I just send a series about that.

Fred

      reply	other threads:[~2013-07-18 15:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-08 17:32 [Qemu-devel] [RFC] Undeterministic behaviour with icount Frederic Konrad
2013-07-10 13:45 ` Paolo Bonzini
2013-07-18 15:06   ` Frederic Konrad [this message]

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=51E80467.5020203@greensocs.com \
    --to=fred.konrad@greensocs.com \
    --cc=edgar.iglesias@gmail.com \
    --cc=mark.burton@greensocs.com \
    --cc=pbonzini@redhat.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.