On Thu, Apr 10, 2025 at 02:58:30 -0400, Laine Stump wrote:
> When "original passt" support was added, we decided that we always
> wanted to reconnect (i.e. restart the passt process) if it was somehow
> terminated. Generic vhost-user only turns on reconnect if specified in
> the config, but there is no reason to require this if the other end of
> the vhost-user socket is a passt process - we know what has happened
> and what we want to do; no reason to make the default configuration
> "do the *wrong* thing".
> 
> Resolves: https://issues.redhat.com/browse/RHEL-80169
> 
> Signed-off-by: Laine Stump <la...@redhat.com>
> ---
>  src/qemu/qemu_passt.c                                       | 6 ++++++
>  .../qemuxmlconfdata/net-vhostuser-passt.x86_64-latest.args  | 6 +++---
>  .../schema-reorder-domain-subelements.x86_64-latest.args    | 2 +-
>  3 files changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/src/qemu/qemu_passt.c b/src/qemu/qemu_passt.c
> index bc495eca1e..018630a5de 100644
> --- a/src/qemu/qemu_passt.c
> +++ b/src/qemu/qemu_passt.c
> @@ -182,6 +182,12 @@ qemuPasstPrepareVhostUser(virDomainObj *vm,
>       */
>      g_free(net->data.vhostuser->data.nix.path);
>      net->data.vhostuser->data.nix.path = qemuPasstCreateSocketPath(vm, net);
> +
> +    /* reconnect is always enabled, with timeout always at 5 seconds, when
> +     * using passt
> +     */
> +    net->data.vhostuser->data.nix.reconnect.enabled = VIR_TRISTATE_BOOL_YES;
> +    net->data.vhostuser->data.nix.reconnect.timeout = 5;

Hmm, shouldn't this be reflected in the XML? That is, I would expect a
post-parse function to set these defaults. And the current code
overrides user specified settings (either disabling or setting a
different timeout), which doesn't is not right. Actually, looking at our
documentation the <reconnect> it seems we don't even support setting
reconnect for vhost-user with passt backend. If that's the case, the
code is fine as is except for the following nit, which I'd like to see
addressed anyway...

And I suggest relacing the 5 seconds timeout with a macro that would
also be used in qemuPasstAddNetProps.

Jirka

Reply via email to