Hi On Thu, Nov 15, 2018 at 6:31 PM Paolo Bonzini <pbonz...@redhat.com> wrote: > > vhost-user already has a way to communicate the endianness of the guest > via the vring endianness messages. The vring endianness always matches > the vnet header endianness so there is no need to do anything else in > the backend. > > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com> > --- > net/vhost-user.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/net/vhost-user.c b/net/vhost-user.c > index a39f9c9974..cd9659df87 100644 > --- a/net/vhost-user.c > +++ b/net/vhost-user.c > @@ -172,6 +172,17 @@ static void net_vhost_user_cleanup(NetClientState *nc) > qemu_purge_queued_packets(nc); > } > > +static int vhost_user_set_vnet_endianness(NetClientState *nc, > + bool enable) > +{ > + /* Nothing to do. If the server supports > + * VHOST_USER_PROTOCOL_F_CROSS_ENDIAN, it will get the > + * vnet header endianness from there. If it doesn't, negotiation > + * fails. > + */ > + return 0; > +} > + > static bool vhost_user_has_vnet_hdr(NetClientState *nc) > { > assert(nc->info->type == NET_CLIENT_DRIVER_VHOST_USER); > @@ -193,6 +204,8 @@ static NetClientInfo net_vhost_user_info = { > .cleanup = net_vhost_user_cleanup, > .has_vnet_hdr = vhost_user_has_vnet_hdr, > .has_ufo = vhost_user_has_ufo, > + .set_vnet_be = vhost_user_set_vnet_endianness, > + .set_vnet_le = vhost_user_set_vnet_endianness, > }; > > static gboolean net_vhost_user_watch(GIOChannel *chan, GIOCondition cond, > -- > 2.19.1 > >