mirror of
https://github.com/qemu/qemu.git
synced 2026-02-04 05:35:39 +00:00
migration: Properly wait on G_IO_IN when peeking messages
migration_channel_read_peek() used to do explicit waits of a short period when peeking message needs retry. Replace it with explicit polls on the io channel, exactly like what qemu_fill_buffer() does. Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Link: https://lore.kernel.org/r/20251022192612.2737648-3-peterx@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com>
This commit is contained in:
@@ -135,12 +135,7 @@ int migration_channel_read_peek(QIOChannel *ioc,
|
||||
break;
|
||||
}
|
||||
|
||||
/* 1ms sleep. */
|
||||
if (qemu_in_coroutine()) {
|
||||
qemu_co_sleep_ns(QEMU_CLOCK_REALTIME, 1000000);
|
||||
} else {
|
||||
g_usleep(1000);
|
||||
}
|
||||
qio_channel_wait_cond(ioc, G_IO_IN);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user