diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2012-07-05 17:16:26 +0200 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2012-07-12 14:08:10 +0300 |
commit | b6a1f3a56921c80cd04d8130e713028c7c91edc1 (patch) | |
tree | 7101a38a2c67e1957544f28b00f9e2be604a5d61 /hw/ivshmem.c | |
parent | 563027cc0c94aa4846c18f9d665a4c90f8c42ba8 (diff) |
ivshmem: wrap ivshmem_del_eventfd loops with transaction
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'hw/ivshmem.c')
-rw-r--r-- | hw/ivshmem.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/hw/ivshmem.c b/hw/ivshmem.c index 3cdbea2133..19e164a353 100644 --- a/hw/ivshmem.c +++ b/hw/ivshmem.c @@ -369,8 +369,12 @@ static void close_guest_eventfds(IVShmemState *s, int posn) guest_curr_max = s->peers[posn].nb_eventfds; + memory_region_transaction_begin(); for (i = 0; i < guest_curr_max; i++) { ivshmem_del_eventfd(s, posn, i); + } + memory_region_transaction_commit(); + for (i = 0; i < guest_curr_max; i++) { event_notifier_cleanup(&s->peers[posn].eventfds[i]); } |