Keep QIOChannelSocket pointer instead of more generic QIOChannel. No real difference for now, but it would be simpler to migrate socket fd in further commit.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]> Acked-by: Raphael Norwitz <[email protected]> Reviewed-by: Daniil Tatianin <[email protected]> --- hw/virtio/vhost-user.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index 9f26515fd4..23e7c12b16 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -244,7 +244,7 @@ struct vhost_user { struct vhost_dev *dev; /* Shared between vhost devs of the same virtio device */ VhostUserState *user; - QIOChannel *backend_ioc; + QIOChannelSocket *backend_sioc; GSource *backend_src; NotifierWithReturn postcopy_notifier; struct PostCopyFD postcopy_fd; @@ -1796,8 +1796,8 @@ static void close_backend_channel(struct vhost_user *u) g_source_destroy(u->backend_src); g_source_unref(u->backend_src); u->backend_src = NULL; - object_unref(OBJECT(u->backend_ioc)); - u->backend_ioc = NULL; + object_unref(OBJECT(u->backend_sioc)); + u->backend_sioc = NULL; } static gboolean backend_read(QIOChannel *ioc, GIOCondition condition, @@ -1904,7 +1904,6 @@ static int vhost_setup_backend_channel(struct vhost_dev *dev) bool reply_supported = vhost_user_has_protocol_feature(dev, VHOST_USER_PROTOCOL_F_REPLY_ACK); Error *local_err = NULL; - QIOChannel *ioc; if (!vhost_user_has_protocol_feature( dev, VHOST_USER_PROTOCOL_F_BACKEND_REQ)) { @@ -1917,15 +1916,15 @@ static int vhost_setup_backend_channel(struct vhost_dev *dev) return -saved_errno; } - ioc = QIO_CHANNEL(qio_channel_socket_new_fd(sv[0], &local_err)); - if (!ioc) { + u->backend_sioc = qio_channel_socket_new_fd(sv[0], &local_err); + if (!u->backend_sioc) { error_report_err(local_err); return -ECONNREFUSED; } - u->backend_ioc = ioc; - u->backend_src = qio_channel_add_watch_source(u->backend_ioc, - G_IO_IN | G_IO_HUP, - backend_read, dev, NULL, NULL); + u->backend_src = qio_channel_add_watch_source(QIO_CHANNEL(u->backend_sioc), + G_IO_IN | G_IO_HUP, + backend_read, dev, + NULL, NULL); if (reply_supported) { msg.hdr.flags |= VHOST_USER_NEED_REPLY_MASK; @@ -2336,7 +2335,7 @@ static int vhost_user_backend_cleanup(struct vhost_dev *dev) close(u->postcopy_fd.fd); u->postcopy_fd.handler = NULL; } - if (u->backend_ioc) { + if (u->backend_sioc) { close_backend_channel(u); } g_free(u->region_rb); -- 2.48.1
