diff options
author | Peter Xu <peterx@redhat.com> | 2018-01-22 14:02:42 +0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2018-02-07 14:09:24 +0100 |
commit | 0bbe435410c37c230c6e7bd926931a13810816e2 (patch) | |
tree | 25341d284249ba520b32e00b7fdb36341d60a61e | |
parent | 0750b060216de69ed1f14bc08181bf4ad27fc622 (diff) | |
download | qemu-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.c | 2 |
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 = { |