From: Avi Kivity <avi@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Marcelo Tosatti <mtosatti@redhat.com>,
qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: [Qemu-devel] Re: [patch uq/master 1/2] virtio-pci: wake up iothread on VIRTIO_PCI_QUEUE_NOTIFY
Date: Mon, 22 Feb 2010 17:32:05 +0200 [thread overview]
Message-ID: <4B82A375.5000907@redhat.com> (raw)
In-Reply-To: <4B82A2CB.3090003@codemonkey.ws>
On 02/22/2010 05:29 PM, Anthony Liguori wrote:
> On 02/22/2010 09:16 AM, Marcelo Tosatti wrote:
>>>> Are you concerned about spurious wakeups?
>>> Yes. Also, qemu_notify_event() is an undirected notification (wakes
>>> up all iothreads, and all devices), whereas ->handle_output() is
>>> directed (wakes up exactly what is needed).
>>>
>>> What's the underlying problem? A new input buffer has become
>>> available, and we need to re-poll the incoming file descriptor? If
>>> so, that's best done from ->handle_output() (either by waking the
>>> iothread or calling read() itself and perhaps receiving -EAGAIN).
>> Yes. Sure, perhaps calling read() itself is appropriate, and i see
>> your point that>handle_output contains more context for a smarter
>> decision.
>>
>> But one can argue thats an improvement on top of a dumb wakeup.
>
> Spurious calls to qemu_notify_event() also make it difficult to tell
> when it's actually necessary to call qemu_notify_event() vs. when it's
> just something that doesn't hurt.
One improvement in this area would be to add a context parameter (which
eventually resolves to the underlying thread). Currently we'd ignore it
since we have just one iothread, but it would serve to document what's
being polled, and later direct the wakeup to the correct thread.
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2010-02-22 15:32 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-22 13:59 [Qemu-devel] [patch uq/master 0/2] wake iothread on virtio kick / flush_coalesced_mmio smp_wmb Marcelo Tosatti
2010-02-22 13:59 ` [Qemu-devel] [patch uq/master 1/2] virtio-pci: wake up iothread on VIRTIO_PCI_QUEUE_NOTIFY Marcelo Tosatti
2010-02-22 14:20 ` [Qemu-devel] " Avi Kivity
2010-02-22 14:29 ` Marcelo Tosatti
2010-02-22 14:51 ` Avi Kivity
2010-02-22 15:16 ` Marcelo Tosatti
2010-02-22 15:29 ` Anthony Liguori
2010-02-22 15:32 ` Avi Kivity [this message]
2010-02-22 15:42 ` Anthony Liguori
2010-02-22 15:55 ` Avi Kivity
2010-03-12 2:45 ` [Qemu-devel] [patch 0/2] introduce QEMUIOWorker and wake up iothread on virtio-serial-bus notification Marcelo Tosatti
2010-03-12 2:45 ` [Qemu-devel] [patch 1/2] Pass QEMUIOWorker to qemu_notify_event Marcelo Tosatti
2010-03-22 21:16 ` Anthony Liguori
2010-03-25 13:47 ` [Qemu-devel] [patch 0/2] introduce QEMUIOWorker and wake up iothread on virtio-serial-bus notification (v2) Marcelo Tosatti
2010-03-25 13:47 ` [Qemu-devel] [patch 1/2] Pass QEMUIOWorker to qemu_notify_event Marcelo Tosatti
2010-03-25 21:06 ` Paul Brook
2010-03-26 3:55 ` Marcelo Tosatti
2010-03-26 15:23 ` Paul Brook
2010-03-26 15:40 ` Anthony Liguori
2010-03-25 13:47 ` [Qemu-devel] [patch 2/2] virtio-serial-bus: wake up iothread upon guest read notification Marcelo Tosatti
2010-03-12 2:45 ` Marcelo Tosatti
2010-03-12 5:53 ` [Qemu-devel] " Amit Shah
2010-02-22 13:59 ` [Qemu-devel] [patch uq/master 2/2] kvm-all.c: define smp_wmb and use it for coalesced mmio Marcelo Tosatti
2010-02-22 14:23 ` [Qemu-devel] " Avi Kivity
2010-02-22 14:45 ` Marcelo Tosatti
2010-02-22 14:57 ` Avi Kivity
2010-02-22 14:57 ` Michael S. Tsirkin
2010-02-22 15:08 ` Avi Kivity
2010-02-22 15:08 ` Michael S. Tsirkin
2010-02-22 15:28 ` Avi Kivity
2010-02-22 14:44 ` Michael S. Tsirkin
2010-02-22 16:57 ` Marcelo Tosatti
2010-02-22 17:04 ` Avi Kivity
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=4B82A375.5000907@redhat.com \
--to=avi@redhat.com \
--cc=anthony@codemonkey.ws \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@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 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).