Commit 9abce56d authored by Yang Hongyang's avatar Yang Hongyang Committed by Jason Wang
Browse files

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: default avatarYang Hongyang <yanghy@cn.fujitsu.com>
Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
parent d62241eb
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -2767,13 +2767,14 @@ static bool object_create_initial(const char *type)
    if (g_str_equal(type, "rng-egd")) {
        return false;
    }
    /* TODO: implement netfilters */
    return true;
}


/*
 * 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)
{
@@ -4286,12 +4287,6 @@ int main(int argc, char **argv, char **envp)
        exit(0);
    }

    if (qemu_opts_foreach(qemu_find_opts("object"),
                          object_create,
                          object_create_delayed, NULL)) {
        exit(1);
    }

    machine_opts = qemu_get_machine_opts();
    if (qemu_opt_foreach(machine_opts, machine_set_property, current_machine,
                         NULL)) {
@@ -4397,6 +4392,12 @@ int main(int argc, char **argv, char **envp)
        exit(1);
    }

    if (qemu_opts_foreach(qemu_find_opts("object"),
                          object_create,
                          object_create_delayed, NULL)) {
        exit(1);
    }

#ifdef CONFIG_TPM
    if (tpm_init() < 0) {
        exit(1);