aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Xu <peterx@redhat.com>2018-01-22 14:02:42 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2018-02-07 14:09:24 +0100
commit0bbe435410c37c230c6e7bd926931a13810816e2 (patch)
tree25341d284249ba520b32e00b7fdb36341d60a61e
parent0750b060216de69ed1f14bc08181bf4ad27fc622 (diff)
downloadqemu-0bbe435410c37c230c6e7bd926931a13810816e2.zip
qemu-0bbe435410c37c230c6e7bd926931a13810816e2.tar.gz
qemu-0bbe435410c37c230c6e7bd926931a13810816e2.tar.bz2
arm: postpone device listener unregister
It's a preparation for follow-up patch to call region_del() in memory_listener_unregister(), otherwise all device addr attached with kvm_devices_head will be reset before calling kvm_arm_set_device_addr. Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20180122060244.29368-3-peterx@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target/arm/kvm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target/arm/kvm.c b/target/arm/kvm.c
index 211a7bf..1219d00 100644
--- a/target/arm/kvm.c
+++ b/target/arm/kvm.c
@@ -266,7 +266,6 @@ static void kvm_arm_machine_init_done(Notifier *notifier, void *data)
{
KVMDevice *kd, *tkd;
- memory_listener_unregister(&devlistener);
QSLIST_FOREACH_SAFE(kd, &kvm_devices_head, entries, tkd) {
if (kd->kda.addr != -1) {
kvm_arm_set_device_addr(kd);
@@ -274,6 +273,7 @@ static void kvm_arm_machine_init_done(Notifier *notifier, void *data)
memory_region_unref(kd->mr);
g_free(kd);
}
+ memory_listener_unregister(&devlistener);
}
static Notifier notify = {