From: Paolo Bonzini <pbonzini@redhat.com>
To: Alistair Francis <alistair.francis@xilinx.com>
Cc: "qemu-devel@nongnu.org Developers" <qemu-devel@nongnu.org>,
Stefan Hajnoczi <stefanha@redhat.com>,
Fam Zheng <famz@redhat.com>,
Edgar Iglesias <edgar.iglesias@xilinx.com>,
qemu-block@nongnu.org
Subject: Re: [Qemu-devel] [RFC v1 4/4] util/oslib-win32: Recursivly pass the timeout
Date: Thu, 29 Jun 2017 15:47:39 -0400 (EDT) [thread overview]
Message-ID: <991581394.12897770.1498765659699.JavaMail.zimbra@redhat.com> (raw)
In-Reply-To: <CAKmqyKNS5D0pV-zspRX8fHE9fhxXmR-v4znAX3_-rdP9su+RJg@mail.gmail.com>
> On Thu, Jun 29, 2017 at 5:34 AM, Paolo Bonzini <pbonzini@redhat.com> wrote:
> > On 28/06/2017 01:57, Alistair Francis wrote:
> > I'm not sure I agree with this change, which is effectively delaying the
> > processing of events. The question to me is which handles are
> > triggering so fast that QEMU effectively busy waits.
>
> Yeah, that is what I was trying to figure out, but didn't make much headway.
>
> I kept seeing zero timeouts, which means that the thread never blocks
> and this patch helps a lot.
Perhaps you can use tracepoints? There shouldn't be many handles registered,
since on Windows even the GUI actions all go through messages.
> > Maybe your QEMUs can get some breath with commit 12f8def0e0 ("win32:
> > replace custom mutex and condition variable with native primitives",
> > 2017-03-27), since the native primitives are more efficient and TCG 2.8
> > used condvars a lot for qemu_io_proceeded_cond.
>
> Ok, I will try that.
>
> Does this mean you don't see the same slowness on QEMU 2.9?
I have not tried, but the patch is only working around the real issue,
as Fam pointed out.
Paolo
next prev parent reply other threads:[~2017-06-29 19:48 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-27 23:57 [Qemu-devel] [RFC v1 0/4] Windows runtime improvements Alistair Francis
2017-06-27 23:57 ` [Qemu-devel] [RFC v1 1/4] util/aio-win32: Only select on what we are actually waiting for Alistair Francis
2017-06-29 9:18 ` Fam Zheng
2017-06-29 12:22 ` Paolo Bonzini
2017-06-27 23:57 ` [Qemu-devel] [RFC v1 2/4] util/oslib-win32: Remove invalid check Alistair Francis
2017-06-28 4:12 ` Philippe Mathieu-Daudé
2017-06-29 9:25 ` Fam Zheng
2017-06-29 13:32 ` Paolo Bonzini
2017-06-29 16:37 ` Alistair Francis
2017-06-30 10:37 ` Paolo Bonzini
2017-07-05 15:44 ` Alistair Francis
2017-06-27 23:57 ` [Qemu-devel] [RFC v1 3/4] util/oslib-win32: Fix up if conditional Alistair Francis
2017-06-29 9:34 ` Fam Zheng
2017-06-29 12:25 ` Paolo Bonzini
2017-06-29 16:31 ` Alistair Francis
2017-06-27 23:57 ` [Qemu-devel] [RFC v1 4/4] util/oslib-win32: Recursivly pass the timeout Alistair Francis
2017-06-29 9:38 ` Fam Zheng
2017-06-29 12:34 ` Paolo Bonzini
2017-06-29 16:33 ` Alistair Francis
2017-06-29 19:47 ` Paolo Bonzini [this message]
2017-06-29 21:17 ` Alistair Francis
2017-07-06 23:48 ` [Qemu-devel] [RFC v1 0/4] Windows runtime improvements no-reply
2017-07-07 0:05 ` Fam Zheng
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=991581394.12897770.1498765659699.JavaMail.zimbra@redhat.com \
--to=pbonzini@redhat.com \
--cc=alistair.francis@xilinx.com \
--cc=edgar.iglesias@xilinx.com \
--cc=famz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/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.