X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=qemu%2Ftarget-openrisc%2Fcpu.c;fp=qemu%2Ftarget-openrisc%2Fcpu.c;h=ae6ed9e92c68e33ad8a245fbae6031e5642815c8;hb=437fd90c0250dee670290f9b714253671a990160;hp=d97f3c03c24396baf2645d27b7bd8ecb994418b9;hpb=5bbd6fe9b8bab2a93e548c5a53b032d1939eec05;p=kvmfornfv.git diff --git a/qemu/target-openrisc/cpu.c b/qemu/target-openrisc/cpu.c index d97f3c03c..ae6ed9e92 100644 --- a/qemu/target-openrisc/cpu.c +++ b/qemu/target-openrisc/cpu.c @@ -17,6 +17,8 @@ * License along with this library; if not, see . */ +#include "qemu/osdep.h" +#include "qapi/error.h" #include "cpu.h" #include "qemu-common.h" @@ -177,6 +179,13 @@ static void openrisc_cpu_class_init(ObjectClass *oc, void *data) dc->vmsd = &vmstate_openrisc_cpu; #endif cc->gdb_num_core_regs = 32 + 3; + + /* + * Reason: openrisc_cpu_initfn() calls cpu_exec_init(), which saves + * the object in cpus -> dangling pointer after final + * object_unref(). + */ + dc->cannot_destroy_with_object_finalize_yet = true; } static void cpu_register(const OpenRISCCPUInfo *info)