On Wed, Jun 10, 2015 at 04:59:42PM +0800, Fam Zheng wrote: > Currently iohandler.c and asyn.c has a lot in common, except that iohandler is > hooked into main_loop_wait(), with qemu_iohandler_fill(). Likewise for slirp. > > It is much cleaner to drive slirp fds with iohandler, and implement > iohandler with an AioContext. This series does these two things. It applies to > Stefan's net-next tree which has the prerequisite that removes the obstacle > "qemu_set_fd_handler2" for this convergence: > > http://comments.gmane.org/gmane.comp.emulators.qemu/341526 > > Upon that this series makes a more consistent main loop structure, and will > also benefits future work on event loop, such as introducing of epoll and > possibly in the long run moving things to separate iothread (whose event loop > is based on AioContext too). > > > Fam Zheng (9): > aio: Introduce aio_set_fd_handler_pri > iohandler: Use aio code > main-loop: Move include of "qemu/sockets.h" to libslirp.h > slirp: Remove dead code for "PROBE_CONN" > slirp: Add "poll_events" to struct socket > slirp: Move icmp socket to iohandler > slirp: Move udb socket to iohandler > slirp: Move tcb socket to iohandler > slirp: Remove unused pollfds from the parameter list > > aio-posix.c | 19 ++ > aio-win32.c | 10 + > include/block/aio.h | 8 + > include/qemu/main-loop.h | 10 +- > iohandler.c | 124 +++-------- > main-loop.c | 10 +- > slirp/libslirp.h | 5 +- > slirp/slirp.c | 528 > +++++++++++++++++++---------------------------- > slirp/slirp_config.h | 4 - > slirp/socket.h | 1 + > stubs/slirp.c | 4 +- > 11 files changed, 300 insertions(+), 423 deletions(-)
Pinging Jan Kiszka for slirp changes.
pgptCLHNdIKrT.pgp
Description: PGP signature