On Fri, May 16, 2025 at 05:56:59PM +0200, Juraj Marcin wrote:
> From: Juraj Marcin <jmar...@redhat.com>
> 
> With the default TCP stack configuration, it could be even 2 hours
> before the connection times out due to the other side not being
> reachable. However, in some cases, the application needs to be aware of
> a connection issue much sooner.
> 
> This is the case, for example, for postcopy live migration. If there is
> no traffic from the migration destination guest (server-side) to the
> migration source guest (client-side), the destination keeps waiting for
> pages indefinitely and does not switch to the postcopy-paused state.
> This can happen, for example, if the destination QEMU instance is
> started with the '-S' command line option and the machine is not started
> yet, or if the machine is idle and produces no new page faults for
> not-yet-migrated pages.
> 
> This patch introduces new inet socket parameters that control count,
> idle period, and interval of TCP keep-alive packets before the
> connection is considered broken. These parameters are available on
> systems where the respective TCP socket options are defined, that
> includes Linux, Windows, macOS, but not OpenBSD. Additionally, macOS
> defines TCP_KEEPIDLE as TCP_KEEPALIVE instead, so the patch supplies its
> own definition.
> 
> The default value for all is 0, which means the system configuration is
> used.
> 
> Signed-off-by: Juraj Marcin <jmar...@redhat.com>
> ---
>  meson.build                    | 30 ++++++++++++
>  qapi/sockets.json              | 19 ++++++++
>  tests/unit/test-util-sockets.c | 33 ++++++++++++++
>  util/qemu-sockets.c            | 83 ++++++++++++++++++++++++++++++++++
>  4 files changed, 165 insertions(+)


Reviewed-by: Daniel P. Berrangé <berra...@redhat.com>


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|


Reply via email to