All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Cc: mst@redhat.com, farosas@suse.de, raphael@enfabrica.net,
	sgarzare@redhat.com, marcandre.lureau@redhat.com,
	pbonzini@redhat.com, kwolf@redhat.com, hreitz@redhat.com,
	berrange@redhat.com, eblake@redhat.com, armbru@redhat.com,
	qemu-devel@nongnu.org, qemu-block@nongnu.org,
	steven.sistare@oracle.com, den-plotnikov@yandex-team.ru
Subject: Re: [PATCH 27/33] migration/socket: keep fds non-block
Date: Wed, 20 Aug 2025 09:30:09 -0400	[thread overview]
Message-ID: <aKXN4bykrOFE6_cX@x1.local> (raw)
In-Reply-To: <20250813164856.950363-28-vsementsov@yandex-team.ru>

On Wed, Aug 13, 2025 at 07:48:48PM +0300, Vladimir Sementsov-Ogievskiy wrote:
> For migration channel keep fds non-blocking property as is.
> It's needed for future local migration of fds.

It is pretty risky.  This changes the attribute for all the iochannels that
migration incoming side uses, including multifd / postcopy / ...

I left comment in previous patch as a pure question trying to understand
whether the feature is needed.  If it is, here it might still be good to:

  - Above the line add a comment explaning why
  - Only apply it to whatever channel that matters.  In this case, IIUC
    only the main channel matters

Thanks,

> 
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
> ---
>  migration/socket.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/migration/socket.c b/migration/socket.c
> index 5ec65b8c03..9f7b6919cf 100644
> --- a/migration/socket.c
> +++ b/migration/socket.c
> @@ -129,6 +129,7 @@ static void socket_accept_incoming_migration(QIONetListener *listener,
>      }
>  
>      qio_channel_set_name(QIO_CHANNEL(cioc), "migration-socket-incoming");
> +    qio_channel_socket_keep_nonblock(QIO_CHANNEL(cioc));
>      migration_channel_process_incoming(QIO_CHANNEL(cioc));
>  }
>  
> -- 
> 2.48.1
> 

-- 
Peter Xu



  reply	other threads:[~2025-08-20 13:30 UTC|newest]

Thread overview: 108+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-13 16:48 [PATCH 00/33] vhost-user-blk: live-backend local migration Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 01/33] vhost: introduce vhost_ops->vhost_set_vring_enable_supported method Vladimir Sementsov-Ogievskiy
2025-10-09 18:56   ` Raphael Norwitz
2025-10-09 19:25     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 02/33] vhost: drop backend_features field Vladimir Sementsov-Ogievskiy
2025-09-12 14:39   ` Markus Armbruster
2025-10-09 18:57   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 03/33] vhost-user: introduce vhost_user_has_prot() helper Vladimir Sementsov-Ogievskiy
2025-10-09 18:57   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 04/33] vhost: move protocol_features to vhost_user Vladimir Sementsov-Ogievskiy
2025-10-09 18:57   ` Raphael Norwitz
2025-10-09 19:35     ` Vladimir Sementsov-Ogievskiy
2025-10-09 19:45       ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 05/33] vhost-user-gpu: drop code duplication Vladimir Sementsov-Ogievskiy
2025-08-18  6:54   ` Philippe Mathieu-Daudé
2025-10-09 18:58   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 06/33] vhost: make vhost_dev.features private Vladimir Sementsov-Ogievskiy
2025-10-09 18:58   ` Raphael Norwitz
2025-10-09 19:40     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 07/33] virtio: move common part of _set_guest_notifier to generic code Vladimir Sementsov-Ogievskiy
2025-08-14  4:53   ` Philippe Mathieu-Daudé
2025-08-14 11:15     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 08/33] virtio: drop *_set_guest_notifier_fd_handler() helpers Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 09/33] vhost-user: keep QIOChannelSocket for backend channel Vladimir Sementsov-Ogievskiy
2025-10-09 18:58   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 10/33] vhost: vhost_virtqueue_start(): fix failure path Vladimir Sementsov-Ogievskiy
2025-10-09 19:00   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 11/33] vhost: make vhost_memory_unmap() null-safe Vladimir Sementsov-Ogievskiy
2025-10-09 19:00   ` Raphael Norwitz
2025-10-09 20:00     ` Vladimir Sementsov-Ogievskiy
2025-10-11 19:10       ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 12/33] vhost: simplify calls to vhost_memory_unmap() Vladimir Sementsov-Ogievskiy
2025-10-09 19:00   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 13/33] vhost: move vrings mapping to the top of vhost_virtqueue_start() Vladimir Sementsov-Ogievskiy
2025-10-09 19:01   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 14/33] vhost: vhost_virtqueue_start(): drop extra local variables Vladimir Sementsov-Ogievskiy
2025-10-09 19:02   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 15/33] vhost: final refactoring of vhost vrings map/unmap Vladimir Sementsov-Ogievskiy
2025-10-09 19:02   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 16/33] vhost: simplify vhost_dev_init() error-path Vladimir Sementsov-Ogievskiy
2025-10-09 19:04   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 17/33] vhost: move busyloop timeout initialization to vhost_virtqueue_init() Vladimir Sementsov-Ogievskiy
2025-10-09 19:04   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 18/33] vhost: introduce check_memslots() helper Vladimir Sementsov-Ogievskiy
2025-10-09 19:06   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 19/33] vhost: vhost_dev_init(): drop extra features variable Vladimir Sementsov-Ogievskiy
2025-10-09 19:06   ` Raphael Norwitz
2025-10-09 20:15     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 20/33] hw/virtio/virtio-bus: refactor virtio_bus_set_host_notifier() Vladimir Sementsov-Ogievskiy
2025-08-14  6:00   ` Philippe Mathieu-Daudé
2025-10-09 19:07   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 21/33] vhost-user: make trace events more readable Vladimir Sementsov-Ogievskiy
2025-08-14  5:59   ` Philippe Mathieu-Daudé
2025-10-09 19:07   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 22/33] vhost-user-blk: add some useful trace-points Vladimir Sementsov-Ogievskiy
2025-08-14  4:58   ` Philippe Mathieu-Daudé
2025-08-14 11:14     ` Vladimir Sementsov-Ogievskiy
2025-10-09 19:07   ` Raphael Norwitz
2025-10-09 20:19     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 23/33] vhost: " Vladimir Sementsov-Ogievskiy
2025-10-09 19:08   ` Raphael Norwitz
2025-10-09 20:20     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 24/33] chardev-add: support local migration Vladimir Sementsov-Ogievskiy
2025-09-12 14:56   ` Markus Armbruster
2025-09-12 15:04     ` Vladimir Sementsov-Ogievskiy
2025-09-12 15:24     ` Steven Sistare
2025-09-15 13:28       ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 25/33] virtio: introduce .skip_vhost_migration_log() handler Vladimir Sementsov-Ogievskiy
2025-10-09 19:08   ` Raphael Norwitz
2025-08-13 16:48 ` [PATCH 26/33] io/channel-socket: introduce qio_channel_socket_keep_nonblock() Vladimir Sementsov-Ogievskiy
2025-08-20 13:27   ` Peter Xu
2025-08-20 13:43     ` Daniel P. Berrangé
2025-08-20 14:37       ` Peter Xu
2025-08-20 14:42         ` Daniel P. Berrangé
2025-08-21 12:07       ` Vladimir Sementsov-Ogievskiy
2025-08-21 13:45         ` Peter Xu
2025-08-21 14:11           ` Daniel P. Berrangé
2025-08-20 13:37   ` Daniel P. Berrangé
2025-08-21 12:08     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 27/33] migration/socket: keep fds non-block Vladimir Sementsov-Ogievskiy
2025-08-20 13:30   ` Peter Xu [this message]
2025-08-21 12:15     ` Vladimir Sementsov-Ogievskiy
2025-08-21 13:49       ` Peter Xu
2025-08-13 16:48 ` [PATCH 28/33] vhost: introduce backend migration Vladimir Sementsov-Ogievskiy
2025-10-09 19:09   ` Raphael Norwitz
2025-10-09 20:51     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 29/33] vhost-user: support " Vladimir Sementsov-Ogievskiy
2025-10-09 19:09   ` Raphael Norwitz
2025-10-09 20:54     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 30/33] virtio: support vhost " Vladimir Sementsov-Ogievskiy
2025-10-09 19:09   ` Raphael Norwitz
2025-10-09 20:59     ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 31/33] vhost-user-blk: " Vladimir Sementsov-Ogievskiy
2025-10-09 19:09   ` Raphael Norwitz
2025-10-09 21:14     ` Vladimir Sementsov-Ogievskiy
2025-10-09 23:43       ` Raphael Norwitz
2025-10-10  6:27         ` Vladimir Sementsov-Ogievskiy
2025-10-13 21:50           ` Raphael Norwitz
2025-10-14 11:59             ` Vladimir Sementsov-Ogievskiy
2025-08-13 16:48 ` [PATCH 32/33] test/functional: exec_command_and_wait_for_pattern: add vm arg Vladimir Sementsov-Ogievskiy
2025-08-14  5:01   ` Philippe Mathieu-Daudé
2025-08-18  6:55   ` Thomas Huth
2025-08-13 16:48 ` [PATCH 33/33] tests/functional: add test_x86_64_vhost_user_blk_fd_migration.py Vladimir Sementsov-Ogievskiy
2025-10-09 19:16 ` [PATCH 00/33] vhost-user-blk: live-backend local migration Raphael Norwitz
2025-10-09 22:43   ` Vladimir Sementsov-Ogievskiy
2025-10-09 23:28     ` Raphael Norwitz
2025-10-10  8:47       ` Vladimir Sementsov-Ogievskiy
2025-10-13 21:41         ` Raphael Norwitz

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=aKXN4bykrOFE6_cX@x1.local \
    --to=peterx@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=den-plotnikov@yandex-team.ru \
    --cc=eblake@redhat.com \
    --cc=farosas@suse.de \
    --cc=hreitz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=raphael@enfabrica.net \
    --cc=sgarzare@redhat.com \
    --cc=steven.sistare@oracle.com \
    --cc=vsementsov@yandex-team.ru \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.