From nobody Fri Nov 7 00:45:00 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1544630520387237.94781293921767; Wed, 12 Dec 2018 08:02:00 -0800 (PST) Received: from localhost ([::1]:45761 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gX6xT-0007Aa-3U for importer@patchew.org; Wed, 12 Dec 2018 11:01:59 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52772) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gX6N9-0001NL-Jj for qemu-devel@nongnu.org; Wed, 12 Dec 2018 10:24:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gX6N6-0000h9-CX for qemu-devel@nongnu.org; Wed, 12 Dec 2018 10:24:27 -0500 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]:40851) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gX6N5-0000Yq-Vk for qemu-devel@nongnu.org; Wed, 12 Dec 2018 10:24:24 -0500 Received: by mail-wm1-x336.google.com with SMTP id q26so6346596wmf.5 for ; Wed, 12 Dec 2018 07:24:11 -0800 (PST) Received: from 640k.lan ([93.56.166.5]) by smtp.gmail.com with ESMTPSA id u10sm15878859wrr.33.2018.12.12.07.24.09 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 07:24:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5rrzvUkpuCnqMHM9DLoYJ4yP3OmI6m5/oEvaZDvNdUg=; b=XaUGE2OkSxWb/YW0D7gfFZO2Zd4PkrIIUBYpIUraZKAZw/6tO/oGu5UuxxzJrRckFN JYd6fRd72QbKdxzBANak3O6RjfAbd68/KigcWRIoZWu0UJHRW+eYGr1W97ys2a8tgOxw +YUSOChvuIGYxzFN/aJFHL6UhslF+B5ulIrOLtqsbSlE2RBgG/whUd32uOtUyQq5lrJq wogA5DlOoYIJt1YzWU0c9tTp/hBr0x4xxqmyDTzIBR5lZ0+mq4vrqUh3jSMPiZLBQXjn 5K3qdMGNt8Tvewd90rlSAihTDFvv3mp/OsU1OlZamJEoLFFiXNuIim9dD70DFShr5Su8 Y4CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=5rrzvUkpuCnqMHM9DLoYJ4yP3OmI6m5/oEvaZDvNdUg=; b=SP5/GSdCQ6Ij72PkinGDG3p9Aldq8o6ZLFRMI1iiGwDP6WSdb0uC+2NLyb2/W7PPm2 WDLjfPwlN3KWQ87p4XJfY+FokxPXKC22Dwp7cHImpkv5C0X71T/6h98eNQ7Tx1MmNi8s qpa8ZgiM/eDhr1iR1PsMRmGXmwP+XcoqNerUjw9bFSVoOhRM72G+4p1ec0qTzDIMbLLA dleZ+zwJIelKOMQSGuY9tZgWhVuYlxYFFU1GPpxGSb+tQK0XIX25EITwpPqHaEn2EhkC Qtk2HBLwjJCgud8V9APAjKbQbea2cZDQd4l2hhn8eRCbKJcfPE+urL/38fABo1RzXGLY 0ixw== X-Gm-Message-State: AA+aEWYR3jD1B4qOyjbjeYLZVrh1aCJx/DFcsqLwrITK6VGdrdgGH0O6 zCUyNxE4VLUWLSOCgxRLaD6GvPzB X-Google-Smtp-Source: AFSGD/UdNBF3bobkZgieYmJz4VrnX8gEXTEGqNTY11ZrhDlZtpga2idMbatXhzzVA7cEHBXq+dnKhQ== X-Received: by 2002:a1c:e913:: with SMTP id q19mr6897276wmc.55.1544628249942; Wed, 12 Dec 2018 07:24:09 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Wed, 12 Dec 2018 16:23:09 +0100 Message-Id: <1544628195-37728-49-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1544628195-37728-1-git-send-email-pbonzini@redhat.com> References: <1544628195-37728-1-git-send-email-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::336 Subject: [Qemu-devel] [PULL 48/54] vhost-user: support cross-endian vnet headers X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) 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. Reviewed-by: Marc-Andr=C3=A9 Lureau Signed-off-by: Paolo Bonzini Message-Id: <1543851204-41186-9-git-send-email-pbonzini@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 a39f9c9..cd9659d 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); } =20 +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 =3D=3D NET_CLIENT_DRIVER_VHOST_USER); @@ -193,6 +204,8 @@ static NetClientInfo net_vhost_user_info =3D { .cleanup =3D net_vhost_user_cleanup, .has_vnet_hdr =3D vhost_user_has_vnet_hdr, .has_ufo =3D vhost_user_has_ufo, + .set_vnet_be =3D vhost_user_set_vnet_endianness, + .set_vnet_le =3D vhost_user_set_vnet_endianness, }; =20 static gboolean net_vhost_user_watch(GIOChannel *chan, GIOCondition cond, --=20 1.8.3.1