summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2010-02-11 14:44:58 +0100
committerAnthony Liguori <aliguori@us.ibm.com>2010-02-23 14:07:58 -0600
commit5e3be6238548b9bf37ea7cbed1924079a4fde4f1 (patch)
tree6d20999e0bc0b305fab3734a824354eba971b847
parentb391493bc6e756be30cc405f58b68b84876418a7 (diff)
downloadqemu-5e3be6238548b9bf37ea7cbed1924079a4fde4f1.tar.gz
net: net_check_clients() runs too early to see -device, fix
Call it right after -device devices get created. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 668680f75feea79704c603b96126c0833e1ed9a9)
-rw-r--r--net.c4
-rw-r--r--net.h1
-rw-r--r--vl.c2
3 files changed, 4 insertions, 3 deletions
diff --git a/net.c b/net.c
index f51d376130..38b65f4905 100644
--- a/net.c
+++ b/net.c
@@ -1275,7 +1275,7 @@ void net_cleanup(void)
}
}
-static void net_check_clients(void)
+void net_check_clients(void)
{
VLANState *vlan;
@@ -1323,8 +1323,6 @@ int net_init_clients(void)
return -1;
}
- net_check_clients();
-
return 0;
}
diff --git a/net.h b/net.h
index a9dc826706..7919967107 100644
--- a/net.h
+++ b/net.h
@@ -162,6 +162,7 @@ extern const char *legacy_bootp_filename;
int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev);
int net_client_parse(QemuOptsList *opts_list, const char *str);
int net_init_clients(void);
+void net_check_clients(void);
void net_cleanup(void);
void net_set_boot_mask(int boot_mask);
void net_host_device_add(Monitor *mon, const QDict *qdict);
diff --git a/vl.c b/vl.c
index 3b5a8e01bf..40b07fe934 100644
--- a/vl.c
+++ b/vl.c
@@ -5969,6 +5969,8 @@ int main(int argc, char **argv, char **envp)
if (qemu_opts_foreach(&qemu_device_opts, device_init_func, NULL, 1) != 0)
exit(1);
+ net_check_clients();
+
if (!display_state)
dumb_display_init();
/* just use the first displaystate for the moment */