All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] migration: Fix disorder of channel creations
@ 2022-12-13 21:38 Peter Xu
  2022-12-13 21:38 ` [PATCH 1/5] io: Add support for MSG_PEEK for socket channel Peter Xu
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Peter Xu @ 2022-12-13 21:38 UTC (permalink / raw)
  To: qemu-devel
  Cc: Juan Quintela, Daniel P . Berrange, Leonardo Bras Soares Passos,
	Manish Mishra, Dr . David Alan Gilbert, peterx

Based-on: <20221011215559.602584-1-peterx@redhat.com>

This whole set is based on the whole set of preempt-full mode being applied
first here:

https://lore.kernel.org/r/20221011215559.602584-1-peterx@redhat.com

I also picked up the latest version from Manish on fixing multifd
counterpart of the problem, here (which are the initial two patches):

https://lore.kernel.org/r/20221123172735.25181-1-manish.mishra@nutanix.com

One trivial change is to fix RDMA builds for patch 1 there.

I verified that I can trigger disordered connections with preempt mode
postcopy (1 out of a few attemps), which can cause migration to hang during
precopy phase, if e.g. I set the NIC packet loss rate to 50%.  So now with
all the 5 patches applied we should fix all the migration disorder issue on
channel creation.

Patch 3 is IMHO a cleanup that I'd think good to have even without patch
4/5.  Patch 5 actually fixes the ordering issue.  For each of the patch,
please refer to the commit message and comments in-code.  Any comment
welcomed.

A side note to Juan: logically it should apply cleanly to your -next tree
as long as Manish's patches are not there - because they're also included
here with a fix to RDMA builds.

Peter Xu (3):
  migration: Rework multi-channel checks on URI
  migration: Add a semaphore to count PONGs
  migration: Postpone postcopy preempt channel to be after main

manish.mishra (2):
  io: Add support for MSG_PEEK for socket channel
  migration: check magic value for deciding the mapping of channels

 chardev/char-socket.c               |   4 +-
 include/io/channel.h                |   6 +
 io/channel-buffer.c                 |   1 +
 io/channel-command.c                |   1 +
 io/channel-file.c                   |   1 +
 io/channel-null.c                   |   1 +
 io/channel-socket.c                 |  17 ++-
 io/channel-tls.c                    |   1 +
 io/channel-websock.c                |   1 +
 io/channel.c                        |  16 ++-
 migration/channel-block.c           |   1 +
 migration/channel.c                 |  45 ++++++++
 migration/channel.h                 |   5 +
 migration/migration.c               | 164 +++++++++++++++++++---------
 migration/migration.h               |  15 ++-
 migration/multifd.c                 |  24 +---
 migration/multifd.h                 |   2 +-
 migration/postcopy-ram.c            |  36 +++---
 migration/postcopy-ram.h            |   6 +-
 migration/rdma.c                    |   1 +
 migration/savevm.c                  |   6 +-
 scsi/qemu-pr-helper.c               |   2 +-
 tests/qtest/tpm-emu.c               |   2 +-
 tests/unit/test-io-channel-socket.c |   1 +
 util/vhost-user-server.c            |   2 +-
 25 files changed, 254 insertions(+), 107 deletions(-)

-- 
2.37.3



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

end of thread, other threads:[~2022-12-16 14:30 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-13 21:38 [PATCH 0/5] migration: Fix disorder of channel creations Peter Xu
2022-12-13 21:38 ` [PATCH 1/5] io: Add support for MSG_PEEK for socket channel Peter Xu
2022-12-14  9:14   ` Daniel P. Berrangé
2022-12-14 21:30     ` Peter Xu
2022-12-15  9:40       ` Daniel P. Berrangé
2022-12-15 17:35         ` Peter Xu
2022-12-16 10:40           ` manish.mishra
2022-12-16 14:30             ` Peter Xu
2022-12-13 21:38 ` [PATCH 2/5] migration: check magic value for deciding the mapping of channels Peter Xu
2022-12-14  9:15   ` Daniel P. Berrangé
2022-12-13 21:38 ` [PATCH 3/5] migration: Rework multi-channel checks on URI Peter Xu
2022-12-13 21:38 ` [PATCH 4/5] migration: Add a semaphore to count PONGs Peter Xu
2022-12-13 21:38 ` [PATCH 5/5] migration: Postpone postcopy preempt channel to be after main Peter Xu

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.