Stefan Hajnoczi dec7d421f8 blockjob: add block_job_defer_to_main_loop()
Block jobs will run in the BlockDriverState's AioContext, which may not
always be the QEMU main loop.

There are some block layer APIs that are either not thread-safe or risk
lock ordering problems.  This includes bdrv_unref(), bdrv_close(), and
anything that calls bdrv_drain_all().

The block_job_defer_to_main_loop() API allows a block job to schedule a
function to run in the main loop with the BlockDriverState AioContext
held.

This function will be used to perform cleanup and backing chain
manipulations in block jobs.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-id: 1413889440-32577-6-git-send-email-stefanha@redhat.com
2014-11-03 11:41:49 +00:00
2014-09-18 20:02:01 +01:00
2013-04-18 13:50:53 +02:00
2014-11-03 09:48:41 +00:00
2014-09-04 17:39:07 +01:00
2014-11-03 11:41:48 +00:00
2014-09-25 13:34:03 +01:00
2014-11-02 13:30:00 +01:00
2014-11-03 11:41:49 +00:00
2012-09-07 09:02:44 +03:00
2014-06-16 13:24:35 +02:00
2013-09-05 09:40:31 -05:00
2014-08-29 10:46:58 +01:00
2014-06-23 11:12:28 -04:00
2013-10-11 09:34:56 -07:00
2014-09-16 11:04:09 +02:00
2013-07-23 02:41:31 +02:00
2014-10-24 12:19:11 +01:00
2014-09-26 13:37:06 -04:00
2014-09-26 13:37:06 -04:00
2014-10-10 14:07:08 +01:00
2013-08-12 09:15:12 -05:00
2014-09-26 09:34:39 +01:00
2013-09-03 12:25:55 +02:00
2014-10-24 12:19:11 +01:00
2014-09-22 11:39:45 +01:00
2014-11-03 11:41:49 +00:00
2014-05-24 00:07:29 +04:00
2014-10-02 09:58:14 +02:00
2013-10-11 09:34:56 -07:00
2014-09-19 17:20:11 +01:00
2014-02-17 11:57:23 -05:00
2014-06-05 16:10:33 +02:00
2014-08-01 18:30:08 +01:00
2013-10-11 09:34:56 -07:00
2014-10-27 14:09:27 +00:00
2014-07-07 10:37:40 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team
Description
A fork of QEMU-Nyx which is better suited for my bachelors thesis
Readme 154 MiB
Languages
C 90.3%
Dylan 2.5%
Python 2.1%
C++ 2%
Shell 1.7%
Other 1.4%