qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Amit Shah <amit.shah@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>,
	qemu list <qemu-devel@nongnu.org>,
	Juan Quintela <quintela@redhat.com>
Subject: [Qemu-devel] Re: [PATCH v6 18/18] virtio-serial-bus: wake up iothread upon guest read notification
Date: Wed, 28 Apr 2010 08:25:59 -0500	[thread overview]
Message-ID: <4BD83767.7040806@codemonkey.ws> (raw)
In-Reply-To: <20100428072921.GT27314@amit-x200.redhat.com>

On 04/28/2010 02:29 AM, Amit Shah wrote:
> On (Tue) Apr 27 2010 [12:41:27], Anthony Liguori wrote:
>    
>> On 04/27/2010 07:34 AM, Amit Shah wrote:
>>      
>>> From: Marcelo Tosatti<mtosatti@redhat.com>
>>>
>>> Wake up iothread when buffers are consumed.
>>>
>>> Signed-off-by: Marcelo Tosatti<mtosatti@redhat.com>
>>> Signed-off-by: Amit Shah<amit.shah@redhat.com>
>>>
>>>        
>> What's the race here?  This looks very odd to me.
>>      
> When the guest indicates it has added buffers to the vq, the iothread
> can then start consuming them. Without this notification, the iothread
> only polls for free buffers when it times out or gets woken up
> otherwise.
>    

When you say, polls for free buffers, what do you mean by that?

You mean, there's a can_read() somewhere that checks for free buffers?

I think switching to qemu_set_fd_handler() would be a better solution.

Regards,

Anthony Liguori

> Other virtio devices do it similarly as well.
>
> 		Amit
>    

  reply	other threads:[~2010-04-28 13:26 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-27 12:33 [Qemu-devel] [PATCH v6 00/18] PULL: virtio-serial fixes Amit Shah
2010-04-27 12:33 ` [Qemu-devel] [PATCH v6 01/18] virtio-serial: save/load: Ensure target has enough ports Amit Shah
2010-04-27 12:33   ` [Qemu-devel] [PATCH v6 02/18] virtio-serial: save/load: Ensure nr_ports on src and dest are same Amit Shah
2010-04-27 12:33     ` [Qemu-devel] [PATCH v6 03/18] virtio-serial: save/load: Ensure we have hot-plugged ports instantiated Amit Shah
2010-04-27 12:33       ` [Qemu-devel] [PATCH v6 04/18] virtio-serial: save/load: Send target host connection status if different Amit Shah
2010-04-27 12:33         ` [Qemu-devel] [PATCH v6 05/18] virtio-serial: Use control messages to notify guest of new ports Amit Shah
2010-04-27 12:34           ` [Qemu-devel] [PATCH v6 06/18] virtio-serial: whitespace: match surrounding code Amit Shah
2010-04-27 12:34             ` [Qemu-devel] [PATCH v6 07/18] virtio-serial: Remove redundant check for 0-sized write request Amit Shah
2010-04-27 12:34               ` [Qemu-devel] [PATCH v6 08/18] virtio-serial: Update copyright year to 2010 Amit Shah
2010-04-27 12:34                 ` [Qemu-devel] [PATCH v6 09/18] virtio-serial: Propagate errors in initialising ports / devices in guest Amit Shah
2010-04-27 12:34                   ` [Qemu-devel] [PATCH v6 10/18] virtio-serial: Send out guest data to ports only if port is opened Amit Shah
2010-04-27 12:34                     ` [Qemu-devel] [PATCH v6 11/18] iov: Introduce a new file for helpers around iovs, add iov_from_buf() Amit Shah
2010-04-27 12:34                       ` [Qemu-devel] [PATCH v6 12/18] iov: Add iov_to_buf and iov_size helpers Amit Shah
2010-04-27 12:34                         ` [Qemu-devel] [PATCH v6 13/18] virtio-serial: Handle scatter-gather buffers for control messages Amit Shah
2010-04-27 12:34                           ` [Qemu-devel] [PATCH v6 14/18] virtio-serial: Handle scatter/gather input from the guest Amit Shah
2010-04-27 12:34                             ` [Qemu-devel] [PATCH v6 15/18] virtio-serial: Apps should consume all data that guest sends out / Fix virtio api abuse Amit Shah
2010-04-27 12:34                               ` [Qemu-devel] [PATCH v6 16/18] virtio-serial: Discard data that guest sends us when ports aren't connected Amit Shah
2010-04-27 12:34                                 ` [Qemu-devel] [PATCH v6 17/18] virtio-serial: Implement flow control for individual ports Amit Shah
2010-04-27 12:34                                   ` [Qemu-devel] [PATCH v6 18/18] virtio-serial-bus: wake up iothread upon guest read notification Amit Shah
2010-04-27 17:41                                     ` [Qemu-devel] " Anthony Liguori
2010-04-27 17:58                                       ` Marcelo Tosatti
2010-04-27 18:13                                         ` Anthony Liguori
2010-04-28  7:29                                       ` Amit Shah
2010-04-28 13:25                                         ` Anthony Liguori [this message]
2010-04-28 16:34                                           ` Amit Shah
2010-04-27 17:37           ` [Qemu-devel] Re: [PATCH v6 05/18] virtio-serial: Use control messages to notify guest of new ports Anthony Liguori
2010-04-28  4:27             ` Amit Shah
2010-04-28 13:26               ` Anthony Liguori
2010-04-28 17:54   ` [Qemu-devel] Re: [PATCH v6 01/18] virtio-serial: save/load: Ensure target has enough ports Anthony Liguori

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=4BD83767.7040806@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=amit.shah@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@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 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).