All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/3] Add zerocopy partial flush support for live migrations
@ 2025-10-09 10:14 Tejus GK
  2025-10-09 10:14 ` [PATCH v5 1/3] QIOChannelSocket: add a "blocking" field to QIOChannelSocket Tejus GK
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Tejus GK @ 2025-10-09 10:14 UTC (permalink / raw)
  To: qemu-devel; +Cc: Tejus GK

Hi all,

This series introduces support for partial flushing of the socket error
queue during a zerocopy enabled live migration. This will help reduce
live migration errors due to ENOBUFS in scenarios where a lot of
out-of-order processing may happen.

V5:
  1. Introduced a new write flag
     QIO_CHANNEL_WRITE_FLAG_ZERO_COPY_FLUSH_ONCE, which will let callers
     decide if they want to do a partial flush on an ENOBUFS.
  2. Added a "blocking" field to QIOChannelSocket, which indicates if
     the socket is in blocking mode or not.

V4:
  1. Minor nit to rename s/zero_copy_flush_pending/zerocopy_flushed_once.

V3:
  1. Add the dirty_sync_missed_zero_copy migration stat again.

V2:
  1. Removed the dirty_sync_missed_zero_copy migration stat.
  2. Made the call to qio_channel_socket_flush_internal() from
     qio_channel_socket_writev() non-blocking

regards,
tejus

Manish Mishra (1):
  QIOChannelSocket: flush zerocopy socket error queue on sendmsg failure
    due to ENOBUF

Tejus GK (2):
  QIOChannelSocket: add a "blocking" field to QIOChannelSocket
  io: add a write flag for partial flushing during a zerocopy write

 include/io/channel-socket.h |  6 +++
 include/io/channel.h        |  1 +
 io/channel-socket.c         | 80 ++++++++++++++++++++++++++++++-------
 migration/multifd-nocomp.c  |  3 +-
 migration/multifd.c         |  3 +-
 5 files changed, 76 insertions(+), 17 deletions(-)

-- 
2.43.7



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-10-10 12:08 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-09 10:14 [PATCH v5 0/3] Add zerocopy partial flush support for live migrations Tejus GK
2025-10-09 10:14 ` [PATCH v5 1/3] QIOChannelSocket: add a "blocking" field to QIOChannelSocket Tejus GK
2025-10-09 10:14 ` [PATCH v5 2/3] io: add a write flag for partial flushing during a zerocopy write Tejus GK
2025-10-09 10:14 ` [PATCH v5 3/3] QIOChannelSocket: flush zerocopy socket error queue on sendmsg failure due to ENOBUF Tejus GK
2025-10-09 10:32   ` Daniel P. Berrangé
2025-10-09 11:51     ` Tejus GK
2025-10-09 16:10       ` Daniel P. Berrangé
2025-10-10 12:06         ` Tejus GK

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.