qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fam Zheng <famz@redhat.com>
To: Stefan Hajnoczi <stefanha@gmail.com>, pbonzini@redhat.com
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org
Subject: Re: [Qemu-devel] [Qemu-block] [PATCH v3 00/13] main-loop: Get rid of fd_read_poll and qemu_set_fd_handler2
Date: Wed, 20 May 2015 12:35:02 +0800	[thread overview]
Message-ID: <20150520043502.GC6219@ad.nay.redhat.com> (raw)
In-Reply-To: <20150519150238.GK9338@stefanha-thinkpad.redhat.com>

On Tue, 05/19 16:02, Stefan Hajnoczi wrote:
> On Tue, May 19, 2015 at 10:50:57AM +0000, Fam Zheng wrote:
> > v3: Replace previous 13 with a simple return type conversion patch.
> >     Drop RFC.
> > 
> > This carries out the mandate in the comment of qemu_set_fd_handler2 and removes
> > fd_read_poll from the code base, because it will make the work easier to
> > convert ppoll to epoll in main loop.  Also, the aio interface doesn't have a
> > read poll callback, which means this conversion woule be necessary if we want
> > to move iohandler fds from main loop to AioContext.
> > 
> > There are five users of the read poll callback now: qemu-nbd, l2tpv3, netmap,
> > socket and tap, which are all covered.
> > 
> > Patch 1 adds a stub for qemu_set_fd_handler which will be referenced in coming
> > patches.
> > 
> > Patch 2 converts qemu-nbd which compares two global numbers in the fd_read_poll
> > callback.
> > 
> > Patches 3~6 converts the four net devices, all of which checks
> > qemu_can_send_packet() in the callback.
> > 
> > Patch 7 and 8 finally removes the function.
> > 
> > The rest patches are cleanup for the unuseful return value of
> > qemu_set_fd_handler.
> > 
> > Please review!
> 
> I looked at the first few patches.
> 
> The qemu-nbd.c conversion is good.  It finds locations where read_poll
> state transitions happen and updates file descriptor monitoring there.

Paolo, will you apply the qemu-nbd.c patch? I'll split net patches into a
separate series.

> 
> The l2tpv3 and netmap conversion throws away read_poll and introduces
> problems instead.
> 
> Please look at the patches again and either:
> 
> 1. Convert everything like you converted qemu-nbd.c.  This is a
>    conservative approach and we can be confident that behavior is
>    unchanged.

OK, I'll try this.

Fam

> 
> 2. Convert more carefully, making sure that packets are actually
>    dropped and QEMU does not spin on a readable fd.
> 
> I prefer #1 because it's easier to check that behavior is still correct.
> It also minimizes queuing inside QEMU.
> 
> Stefan

  reply	other threads:[~2015-05-20  4:35 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-19 10:50 [Qemu-devel] [PATCH v3 00/13] main-loop: Get rid of fd_read_poll and qemu_set_fd_handler2 Fam Zheng
2015-05-19 10:50 ` [Qemu-devel] [PATCH v3 01/13] stubs: Add qemu_set_fd_handler Fam Zheng
2015-05-19 10:50 ` [Qemu-devel] [PATCH v3 02/13] qemu-nbd: Switch to qemu_set_fd_handler Fam Zheng
2015-05-19  6:02   ` Amit Shah
2015-05-19  6:09     ` Amit Shah
2015-05-19 14:39   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 03/13] l2tpv3: Drop l2tpv3_can_send Fam Zheng
2015-05-19 14:48   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2015-05-26  6:52     ` Fam Zheng
2015-05-26  9:07       ` Stefan Hajnoczi
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 04/13] netmap: Drop netmap_can_send Fam Zheng
2015-05-19 14:54   ` Stefan Hajnoczi
2015-05-25  3:51     ` Fam Zheng
2015-05-26  9:18       ` Stefan Hajnoczi
2015-05-27  7:24         ` Fam Zheng
2015-06-02 16:24           ` Stefan Hajnoczi
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 05/13] net/socket: Drop net_socket_can_send Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 06/13] tap: Drop tap_can_send Fam Zheng
2015-06-02 16:21   ` Stefan Hajnoczi
2015-06-03  7:35     ` Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 07/13] Change qemu_set_fd_handler2(..., NULL, ...) to qemu_set_fd_handler Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 08/13] main-loop: Drop qemu_set_fd_handler2 Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 09/13] alsaaudio: Remove unused error handling of qemu_set_fd_handler Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 10/13] oss: " Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 11/13] xen_backend: " Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 12/13] event-notifier: Always return 0 for posix implementation Fam Zheng
2015-05-19 10:51 ` [Qemu-devel] [PATCH v3 13/13] iohandler: Change return type of qemu_set_fd_handler to "void" Fam Zheng
2015-05-19 15:02 ` [Qemu-devel] [Qemu-block] [PATCH v3 00/13] main-loop: Get rid of fd_read_poll and qemu_set_fd_handler2 Stefan Hajnoczi
2015-05-20  4:35   ` Fam Zheng [this message]
2015-05-20  6:26   ` Paolo Bonzini
2015-05-20  6:38     ` Fam Zheng
2015-05-20  7:39       ` [Qemu-devel] " Paolo Bonzini
2015-05-20  8:28         ` Stefan Hajnoczi

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=20150520043502.GC6219@ad.nay.redhat.com \
    --to=famz@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@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 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).