On Wed, Sep 14, 2022 at 5:14 PM Mike Pattrick <[email protected]> wrote:
>
> On Tue, Sep 13, 2022 at 5:21 AM David Marchand
> <[email protected]> wrote:
> >
> > At some point in OVS history, some virtio features were announced as
> > supported (ECN and UFO virtio features).
> >
> > The userspace TSO code, which has been added later, does not support
> > those features and tries to disable them.
> >
> > This breaks OVS upgrades: if an existing VM already negotiated such
> > features, their lack on reconnection to an upgraded OVS triggers a
> > vhost socket disconnection by Qemu.
> > This results in an endless loop because Qemu then retries with the same
> > set of virtio features.
> >
> > This patch proposes to try and detect those vhost socket disconnection
> > and fallback restoring the old virtio features (and disabling TSO for this
> > vhost port).
> >
> > Signed-off-by: David Marchand <[email protected]>
> > ---
> > Changelog since v1:
> > - added a note in the documentation,
> > - fixed vhost unregister trigger (so that both disabling and re-enabling
> >   TSO is handled),
> > - cleared netdev features when disabling TSO,
> > - changed level and ratelimited log message on vhost socket disconnect,
> >
>
> This does solve the issue. My only real comment is it may be opaque to
> an end user. Do you think it makes sense to add this information to
> netdev_dpdk_vhost_user_get_status? Or do you think the log message
> should suffice?

Well, log messages may be lost after some time.

I agree that we need a place where to get the latest up-to-date info
for a particular vhost port.
And netdev_dpdk_vhost_user_get_status() seems like a good place, indeed.

I'll update the documentation accordingly.


-- 
David Marchand

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to