[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 08/71] vhost-user: support cross-endian vnet headers
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 08/71] vhost-user: support cross-endian vnet headers |
Date: |
Mon, 3 Dec 2018 16:32:21 +0100 |
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é Lureau <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
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);
}
+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,
--
1.8.3.1
- [Qemu-devel] [PATCH 01/71] vhost-net: move stubs to a separate file, (continued)
- [Qemu-devel] [PATCH 01/71] vhost-net: move stubs to a separate file, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 03/71] vhost: restrict Linux dependency to kernel vhost, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 04/71] vhost-net: compile it on all targets that have virtio-net., Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 05/71] vhost-net: revamp configure logic, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 07/71] vhost-user-test: signal data_cond when s->rings changes, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 08/71] vhost-user: support cross-endian vnet headers,
Paolo Bonzini <=
- [Qemu-devel] [PATCH 09/71] vhost-user-test: support VHOST_USER_PROTOCOL_F_CROSS_ENDIAN, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 06/71] vhost-user-test: use g_cond_broadcast, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 10/71] vhost-user-test: skip if there is no memory at address 0, Paolo Bonzini, 2018/12/03
- [Qemu-devel] [PATCH 11/71] vhost-user-test: reduce usage of global_qtest, Paolo Bonzini, 2018/12/03