From: Paolo Bonzini <pbonzini@redhat.com>
To: Ming Lei <tom.leiming@gmail.com>
Cc: Kevin Wolf <kwolf@redhat.com>, Fam Zheng <famz@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Stefan Hajnoczi <stefanha@gmail.com>,
qemu-devel <qemu-devel@nongnu.org>,
Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [regression] dataplane: throughout -40% by commit 580b6b2aa2
Date: Thu, 03 Jul 2014 13:56:44 +0200 [thread overview]
Message-ID: <53B544FC.7010900@redhat.com> (raw)
In-Reply-To: <CACVXFVOA90CXQcQh_kTAxg7HwR-jQFns1C0dXZiyZLWOvo-eQw@mail.gmail.com>
Il 03/07/2014 13:50, Ming Lei ha scritto:
>> Yes, you can just move the atomic_inc/atomic_dec in aio_poll.
>
> If you mean move inc/dec of 'running' in aio_poll, that won't work.
> When aio_notify() sees 'running', it won't set notifier, and may
> trap to ppoll().
I mean move it to aio_poll, around the second invocation of aio_dispatch.
IIRC the first invocation of aio_dispatch is only used when AioContext
is running as a GSource. It should never run for dataplane, so it's
okay if we only trap aio_notify from the second aio_dispatch().
In 2.2, we should rewrite aio_poll() to follow the
prepare/poll/check/dispatch model of glib. Then the optimization
becomes much simpler (you only call aio_dispatch once) and it also works
for GSource mode.
Stefan convinced me to send the patch myself, so I will do it now.
Paolo
next prev parent reply other threads:[~2014-07-03 11:57 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-26 15:14 [Qemu-devel] [regression] dataplane: throughout -40% by commit 580b6b2aa2 Ming Lei
2014-06-26 15:29 ` Paolo Bonzini
2014-06-26 15:37 ` Ming Lei
2014-06-26 15:43 ` Paolo Bonzini
2014-06-26 15:47 ` Ming Lei
2014-06-26 15:57 ` Paolo Bonzini
2014-06-27 1:15 ` Ming Lei
2014-06-27 4:59 ` Paolo Bonzini
2014-06-27 6:23 ` Kevin Wolf
2014-06-27 7:35 ` Paolo Bonzini
2014-06-27 12:35 ` Ming Lei
2014-06-27 7:57 ` Ming Lei
2014-06-27 12:01 ` Stefan Hajnoczi
2014-06-27 12:21 ` Kevin Wolf
2014-06-27 14:50 ` Stefan Hajnoczi
2014-06-27 18:01 ` Ming Lei
2014-06-27 21:51 ` Paolo Bonzini
2014-06-28 9:58 ` Ming Lei
2014-06-30 8:08 ` Stefan Hajnoczi
2014-06-30 8:27 ` Ming Lei
2014-07-01 13:53 ` Ming Lei
2014-07-01 14:31 ` Stefan Hajnoczi
2014-07-01 14:49 ` Ming Lei
2014-07-01 16:49 ` Paolo Bonzini
2014-07-02 0:48 ` Ming Lei
2014-07-02 8:54 ` Stefan Hajnoczi
2014-07-02 9:13 ` Paolo Bonzini
2014-07-02 9:39 ` Kevin Wolf
2014-07-02 9:48 ` Paolo Bonzini
2014-07-02 10:01 ` Kevin Wolf
2014-07-02 10:23 ` Paolo Bonzini
2014-07-02 15:45 ` Ming Lei
2014-07-02 16:13 ` Ming Lei
2014-07-02 16:23 ` Paolo Bonzini
2014-07-02 16:27 ` Ming Lei
2014-07-02 16:38 ` Paolo Bonzini
2014-07-02 16:41 ` Ming Lei
2014-07-02 16:21 ` Paolo Bonzini
2014-07-03 4:54 ` Ming Lei
2014-07-03 10:29 ` Paolo Bonzini
2014-07-03 11:50 ` Ming Lei
2014-07-03 11:56 ` Paolo Bonzini [this message]
2014-07-03 12:09 ` Ming Lei
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=53B544FC.7010900@redhat.com \
--to=pbonzini@redhat.com \
--cc=famz@redhat.com \
--cc=kwolf@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=stefanha@redhat.com \
--cc=tom.leiming@gmail.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.