diff options
author | Cornelia Huck <cornelia.huck@de.ibm.com> | 2013-09-04 14:16:15 +0200 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2013-09-06 15:25:09 +0200 |
commit | 8caf907f07688972e5e7cd11526079b1665d6dba (patch) | |
tree | 0b8f280f58f6cbc5d96865eee443a38dbcbb17b9 /tests/test-qdev-global-props.c | |
parent | 5daa74a6ebce7543aaad178c4061dc087bb4c705 (diff) |
dataplane: Fix startup race.
Avoid trying to setup dataplane again if dataplane setup is already in
progress. This may happen if an eventfd is triggered during setup.
I saw this occasionally with an experimental s390 irqfd implementation:
virtio_blk_handle_output
-> virtio_blk_data_plane_start
-> virtio_ccw_set_host_notifier
...
-> virtio_queue_set_host_notifier_fd_handler
-> virtio_queue_host_notifier_read
-> virtio_queue_notify_vq
-> virtio_blk_handle_output
-> virtio_blk_data_plane_start
-> vring_setup
-> hostmem_init
-> memory_listener_register
-> BOOM
As virtio-ccw tries to follow what virtio-pci does, it might be triggerable
for other platforms as well.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'tests/test-qdev-global-props.c')
0 files changed, 0 insertions, 0 deletions