* Paolo Bonzini (pbonz...@redhat.com) wrote: > On 13/03/2018 12:06, Daniel P. Berrangé wrote: > > On Tue, Mar 13, 2018 at 11:57:17AM +0100, Paolo Bonzini wrote: > >> On 13/03/2018 10:20, Dr. David Alan Gilbert wrote: > >>>> static void socket_start_incoming_migration(SocketAddress *saddr, > >>>> Error **errp) > >>>> { > >>>> - QIOChannelSocket *listen_ioc = qio_channel_socket_new(); > >>>> + QIONetListener *listener = qio_net_listener_new(); > >>>> > >>>> - qio_channel_set_name(QIO_CHANNEL(listen_ioc), > >>>> - "migration-socket-listener"); > >>>> + qio_net_listener_set_name(listener, "migration-socket-listener"); > >>>> > >>>> - if (qio_channel_socket_listen_sync(listen_ioc, saddr, errp) < 0) { > >>>> - object_unref(OBJECT(listen_ioc)); > >>>> + if (qio_net_listener_open_sync(listener, saddr, errp) < 0) { > >>>> + object_unref(OBJECT(listener)); > >>>> return; > >>>> } > >>>> > >>>> - qio_channel_add_watch(QIO_CHANNEL(listen_ioc), > >>>> - G_IO_IN, > >>>> - socket_accept_incoming_migration, > >>>> - listen_ioc, > >>>> - (GDestroyNotify)object_unref); > >>>> + qio_net_listener_set_client_func(listener, > >>>> + socket_accept_incoming_migration, > >>>> + NULL, NULL); > >>>> } > >>>> > >>>> void tcp_start_incoming_migration(const char *host_port, Error **errp) > >>>> -- > >>>> 2.14.3 > >>>> > >>> -- > >>> Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK > >>> > >> > >> Could this get in 2.12 as a bugfix, even after soft freeze? It's the > >> last user of qio_channel_listen_sync that blocks full IPv4/IPv6 support. > >> All other users are for vsock/AF_UNIX. > > > > I had been thinking of all this conversion as feature, but I guess if we > > squint our eyes a bit we could claim it is just a bugfix on the grounds > > that it is fixing broken IPv4/6 dual stack support. > > It is certainly a feature, but when only one listener remains broken > then it becomes more of a bugfix.
Sounds reasonable to me. Dave > Paolo -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK