summary refs log tree commit diff stats
path: root/include/hw/intc/ibex_plic.h
diff options
context:
space:
mode:
authorHanna Reitz <hreitz@redhat.com>2022-02-04 12:10:12 +0100
committerVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>2022-02-11 14:06:18 +0100
commit8cfbe929e8c26050f0a4580a1606a370a947d4ce (patch)
tree3634a0f84dfaa0a9900574ea679cc22680d757f3 /include/hw/intc/ibex_plic.h
parente15f3a66c830e3fce99c9d56c493c2f7078a1225 (diff)
downloadfocaccia-qemu-8cfbe929e8c26050f0a4580a1606a370a947d4ce.tar.gz
focaccia-qemu-8cfbe929e8c26050f0a4580a1606a370a947d4ce.zip
iotests/281: Let NBD connection yield in iothread
Put an NBD block device into an I/O thread, and then read data from it,
hoping that the NBD connection will yield during that read.  When it
does, the coroutine must be reentered in the block device's I/O thread,
which will only happen if the NBD block driver attaches the connection's
QIOChannel to the new AioContext.  It did not do that after 4ddb5d2fde
("block/nbd: drop connection_co") and prior to "block/nbd: Move s->ioc
on AioContext change", which would cause an assertion failure.

To improve our chances of yielding, the NBD server is throttled to
reading 64 kB/s, and the NBD client reads 128 kB, so it should yield at
some point.

Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Diffstat (limited to 'include/hw/intc/ibex_plic.h')
0 files changed, 0 insertions, 0 deletions