On Tue, Apr 3, 2012 at 11:06, Paolo Bonzini <pbonz...@redhat.com> wrote: > Il 20/03/2012 10:49, Paolo Bonzini ha scritto: >> The w32 main loop has been mostly broken by the introduction of the >> glib main loop. glib's g_poll does not use sockets on w32, so we >> need a separate approach. >> >> Patch 1 is a simple cleanup that is needed later in the series. >> >> Patch 2 and patch 3 completely separate the way the main loop waits >> on POSIX and w32 systems, and drop glib source handling from the w32 >> main loop. >> >> Patch 4 fixes a longstanding bug in how sockets are handled, also >> simplifying the code in the process. On top of this simplification, >> patch 5 starts using g_poll in the w32 main loop and patch 6 adds >> back glib source handling. >> >> I didn't test this in the conditions explained in bug 916720, but I >> tested both a TCP monitor and an stdio monitor and both work (under >> Wine that is). >> >> Stefan, can you please take care of shepherding the patches in >> (pinging etc.)? >> >> Paolo Bonzini (6): >> slirp: use socket_set_nonblock >> main loop: use msec-based timeout in glib_select_fill >> main-loop: disable fd_set-based glib integration under w32 >> main-loop: interrupt wait when data arrives on a socket >> main-loop: replace WaitForMultipleObjects with g_poll >> main-loop: integrate glib sources for w32 > > Patch 1 is now in separately through the slirp tree, so the other 5 can > now be applied. Blue, can you commit them?
Thanks, applied all. > > Paolo >