Stefan Hajnoczi
ea17c9d20d
block: use BDRV_POLL_WHILE() in bdrv_rw_vmstate()
...
Calling aio_poll() directly may have been fine previously, but this is
the future, man! The difference between an aio_poll() loop and
BDRV_POLL_WHILE() is that BDRV_POLL_WHILE() releases the AioContext
around aio_poll().
This allows the IOThread to run fd handlers or BHs to complete the
request. Failure to release the AioContext causes deadlocks.
Using BDRV_POLL_WHILE() partially fixes a 'savevm' hang with -object
iothread.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2017-06-26 14:51:13 +02:00
..
2017-06-16 07:55:00 +08:00
2017-05-24 16:38:51 -04:00
2017-06-20 14:31:31 +02:00
2017-04-27 16:12:13 +02:00
2017-05-09 09:13:51 +02:00
2017-06-16 07:55:00 +08:00
2017-04-24 15:09:33 -04:00
2017-04-24 15:09:33 -04:00
2017-06-26 14:51:12 +02:00
2017-05-09 14:41:47 +01:00
2017-05-16 10:34:50 -04:00
2017-06-16 07:55:00 +08:00
2016-10-07 14:14:06 +02:00
2017-04-24 15:09:33 -04:00
2016-10-07 14:14:06 +02:00
2017-05-29 15:39:54 +02:00
2017-05-29 15:39:54 +02:00
2017-06-09 08:41:29 -04:00
2017-06-26 14:51:13 +02:00
2017-01-27 18:07:58 +01:00
2017-06-14 17:39:46 -04:00
2017-02-21 11:39:39 +00:00
2017-04-24 15:08:42 -04:00
2017-06-16 07:55:00 +08:00
2017-06-15 11:04:06 +02:00
2017-03-27 14:41:01 +02:00
2017-06-20 14:31:31 +02:00
2017-06-22 11:34:39 +01:00
2017-05-09 09:13:51 +02:00
2017-04-28 16:02:02 +02:00
2017-06-22 11:34:39 +01:00
2016-11-25 13:51:30 +01:00
2017-05-29 15:39:54 +02:00
2017-05-11 14:28:07 +02:00
2017-05-11 14:28:07 +02:00
2017-05-29 15:39:53 +02:00
2017-05-11 14:28:07 +02:00
2017-06-09 13:46:20 +02:00
2016-06-07 18:19:24 +03:00
2017-02-21 11:39:39 +00:00
2016-01-20 13:36:23 +01:00
2016-01-20 13:36:23 +01:00
2017-02-21 11:39:39 +00:00
2017-05-18 19:20:59 +02:00
2017-02-21 11:14:08 +00:00
2017-06-20 14:31:31 +02:00
2017-04-28 16:02:03 +02:00
2017-06-14 17:39:46 -04:00
2017-05-07 09:57:51 +03:00
2017-06-22 11:34:39 +01:00
2017-05-09 09:13:51 +02:00
2017-06-20 14:31:31 +02:00
2017-05-26 16:48:21 +02:00
2017-06-16 07:55:00 +08:00
2017-04-24 15:08:42 -04:00
2017-05-17 12:04:59 +02:00
2016-09-23 11:42:52 +08:00
2017-04-28 16:02:02 +02:00
2017-05-17 12:04:59 +02:00
2014-12-12 15:42:22 +00:00
2017-05-17 12:04:59 +02:00
2017-05-17 12:04:59 +02:00
2017-06-20 14:31:31 +02:00
2017-05-09 09:13:51 +02:00
2017-02-21 11:39:39 +00:00
2016-10-07 13:34:07 +02:00