aboutsummaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorHaifeng Gao <gaohaifeng.gao@huawei.com>2015-02-28 17:02:02 +0800
committerMichael S. Tsirkin <mst@redhat.com>2015-03-03 17:55:36 +0100
commit24f938a682d934b133863eb421aac33592f7a09e (patch)
treef7b3d308ce0416847a37dc73e263312c84852c44 /net
parent2e5feadbf8133b9b108919a2f576943b448a1a06 (diff)
vhost user:support vhost user nic for non msi guests
Currently, vhost user nic doesn't support non msi guests(like pxe stage) by default. Vhost user nic can't fall back to qemu like normal vhost net nic does. So we should enable it for non msi guests. Signed-off-by: Haifeng Gao <gaohaifeng.gao@huawei.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'net')
-rw-r--r--net/vhost-user.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/net/vhost-user.c b/net/vhost-user.c
index 24e050c772..2435b0f826 100644
--- a/net/vhost-user.c
+++ b/net/vhost-user.c
@@ -18,7 +18,6 @@
typedef struct VhostUserState {
NetClientState nc;
CharDriverState *chr;
- bool vhostforce;
VHostNetState *vhost_net;
} VhostUserState;
@@ -51,7 +50,7 @@ static int vhost_user_start(VhostUserState *s)
options.backend_type = VHOST_BACKEND_TYPE_USER;
options.net_backend = &s->nc;
options.opaque = s->chr;
- options.force = s->vhostforce;
+ options.force = true;
s->vhost_net = vhost_net_init(&options);
@@ -133,8 +132,7 @@ static void net_vhost_user_event(void *opaque, int event)
}
static int net_vhost_user_init(NetClientState *peer, const char *device,
- const char *name, CharDriverState *chr,
- bool vhostforce)
+ const char *name, CharDriverState *chr)
{
NetClientState *nc;
VhostUserState *s;
@@ -149,7 +147,6 @@ static int net_vhost_user_init(NetClientState *peer, const char *device,
/* We don't provide a receive callback */
s->nc.receive_disabled = 1;
s->chr = chr;
- s->vhostforce = vhostforce;
qemu_chr_add_handlers(s->chr, NULL, NULL, net_vhost_user_event, s);
@@ -230,7 +227,6 @@ int net_init_vhost_user(const NetClientOptions *opts, const char *name,
{
const NetdevVhostUserOptions *vhost_user_opts;
CharDriverState *chr;
- bool vhostforce;
assert(opts->kind == NET_CLIENT_OPTIONS_KIND_VHOST_USER);
vhost_user_opts = opts->vhost_user;
@@ -247,12 +243,6 @@ int net_init_vhost_user(const NetClientOptions *opts, const char *name,
return -1;
}
- /* vhostforce for non-MSIX */
- if (vhost_user_opts->has_vhostforce) {
- vhostforce = vhost_user_opts->vhostforce;
- } else {
- vhostforce = false;
- }
- return net_vhost_user_init(peer, "vhost_user", name, chr, vhostforce);
+ return net_vhost_user_init(peer, "vhost_user", name, chr);
}