vl.c: init delayed object after net_init_clients

Init delayed object after net_init_clients, because netfilters need
to be initialized after net clients initialized.

Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
Yang Hongyang 2015-10-07 11:52:13 +08:00 committed by Jason Wang
parent d62241eb6d
commit 9abce56d7b
1 changed files with 8 additions and 7 deletions

15
vl.c
View File

@ -2767,13 +2767,14 @@ static bool object_create_initial(const char *type)
if (g_str_equal(type, "rng-egd")) { if (g_str_equal(type, "rng-egd")) {
return false; return false;
} }
/* TODO: implement netfilters */
return true; return true;
} }
/* /*
* The remainder of object creation happens after the * The remainder of object creation happens after the
* creation of chardev, fsdev and device data types. * creation of chardev, fsdev, net clients and device data types.
*/ */
static bool object_create_delayed(const char *type) static bool object_create_delayed(const char *type)
{ {
@ -4286,12 +4287,6 @@ int main(int argc, char **argv, char **envp)
exit(0); exit(0);
} }
if (qemu_opts_foreach(qemu_find_opts("object"),
object_create,
object_create_delayed, NULL)) {
exit(1);
}
machine_opts = qemu_get_machine_opts(); machine_opts = qemu_get_machine_opts();
if (qemu_opt_foreach(machine_opts, machine_set_property, current_machine, if (qemu_opt_foreach(machine_opts, machine_set_property, current_machine,
NULL)) { NULL)) {
@ -4397,6 +4392,12 @@ int main(int argc, char **argv, char **envp)
exit(1); exit(1);
} }
if (qemu_opts_foreach(qemu_find_opts("object"),
object_create,
object_create_delayed, NULL)) {
exit(1);
}
#ifdef CONFIG_TPM #ifdef CONFIG_TPM
if (tpm_init() < 0) { if (tpm_init() < 0) {
exit(1); exit(1);