Kevin Wolf 34dc97b9a0 blockjob: Wake up BDS when job becomes idle
In the context of draining a BDS, the .drained_poll callback of block
jobs is called. If this returns true (i.e. there is still some activity
pending), the drain operation may call aio_poll() with blocking=true to
wait for completion.

As soon as the pending activity is completed and the job finally arrives
in a quiescent state (i.e. its coroutine either yields with busy=false
or terminates), the block job must notify the aio_poll() loop to wake
up, otherwise we get a deadlock if both are running in different
threads.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
2018-09-25 15:50:15 +02:00
..
2017-09-22 14:11:25 +02:00
2017-07-24 12:42:55 +01:00
2016-06-07 18:19:23 +03:00
2017-10-16 20:57:13 +03:00
2016-10-26 08:29:01 -07:00
2017-09-05 22:34:40 +02:00
2018-08-23 18:46:25 +02:00
2018-03-12 11:18:26 +01:00
2016-06-16 18:39:03 +02:00
2018-08-23 18:46:25 +02:00
2018-08-23 18:46:25 +02:00
2018-08-23 18:46:25 +02:00
2018-01-16 14:54:50 +01:00
2018-08-23 18:46:25 +02:00
2017-06-16 07:55:00 +08:00
2018-08-23 18:46:25 +02:00
2016-02-23 12:43:05 +00:00
2018-06-15 14:40:56 +01:00
2018-08-24 20:26:37 +02:00
2016-09-15 15:32:22 +03:00
2017-12-20 22:01:24 +08:00
2018-02-08 09:22:03 +08:00
2017-01-24 23:26:52 +03:00