[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/4] vhost-net: add vhost_net_set_queue_num helper
From: |
Maxime Coquelin |
Subject: |
[Qemu-devel] [PATCH 3/4] vhost-net: add vhost_net_set_queue_num helper |
Date: |
Fri, 12 Jan 2018 15:56:57 +0100 |
This patch adds a new help to notify the backend with
the number of queue pairs setup by the guest driver.
Signed-off-by: Maxime Coquelin <address@hidden>
---
hw/net/vhost_net.c | 17 +++++++++++++++++
include/net/vhost_net.h | 1 +
2 files changed, 18 insertions(+)
diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c
index e037db63a3..d60e237a34 100644
--- a/hw/net/vhost_net.c
+++ b/hw/net/vhost_net.c
@@ -124,6 +124,18 @@ uint64_t vhost_net_get_max_queues(VHostNetState *net)
return net->dev.max_queues;
}
+int vhost_net_set_queue_num(NetClientState *nc, uint64_t queues)
+{
+ VHostNetState *net = get_vhost_net(nc);
+ const VhostOps *vhost_ops = net->dev.vhost_ops;
+
+ if (vhost_ops->vhost_set_queue_num) {
+ return vhost_ops->vhost_set_queue_num(&net->dev, queues);
+ }
+
+ return 0;
+}
+
uint64_t vhost_net_get_acked_features(VHostNetState *net)
{
return net->dev.acked_features;
@@ -456,6 +468,11 @@ uint64_t vhost_net_get_max_queues(VHostNetState *net)
return 1;
}
+int vhost_net_set_queue_num(NetClientState *nc, uint64_t queues)
+{
+ return 0;
+}
+
struct vhost_net *vhost_net_init(VhostNetOptions *options)
{
error_report("vhost-net support is not compiled in");
diff --git a/include/net/vhost_net.h b/include/net/vhost_net.h
index afc1499eb9..39e639d014 100644
--- a/include/net/vhost_net.h
+++ b/include/net/vhost_net.h
@@ -15,6 +15,7 @@ typedef struct VhostNetOptions {
} VhostNetOptions;
uint64_t vhost_net_get_max_queues(VHostNetState *net);
+int vhost_net_set_queue_num(NetClientState *nc, uint64_t queues);
struct vhost_net *vhost_net_init(VhostNetOptions *options);
int vhost_net_start(VirtIODevice *dev, NetClientState *ncs, int total_queues);
--
2.14.3