]> git.ipfire.org Git - thirdparty/qemu.git/commit
async: Add an optional reentrancy guard to the BH API
authorAlexander Bulekov <alxndr@bu.edu>
Thu, 27 Apr 2023 21:10:07 +0000 (17:10 -0400)
committerMichael Tokarev <mjt@tls.msk.ru>
Mon, 11 Sep 2023 07:53:50 +0000 (10:53 +0300)
commit61dacb401bd375503863efda32678145fc9ceb55
treefbdaeefab365a74563e9650b4170bd8890cc2ad8
parentc40ca2301c7603524eaddb5308a3f524c6f89d24
async: Add an optional reentrancy guard to the BH API

Devices can pass their MemoryReentrancyGuard (from their DeviceState),
when creating new BHes. Then, the async API will toggle the guard
before/after calling the BH call-back. This prevents bh->mmio reentrancy
issues.

Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20230427211013.2994127-3-alxndr@bu.edu>
[thuth: Fix "line over 90 characters" checkpatch.pl error]
Signed-off-by: Thomas Huth <thuth@redhat.com>
(cherry picked from commit 9c86c97f12c060bf7484dd931f38634e166a81f0)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
[mjt: minor context adjustment in include/block/aio.h and include/qemu/main-loop.h for 7.2]
docs/devel/multiple-iothreads.txt
include/block/aio.h
include/qemu/main-loop.h
tests/unit/ptimer-test-stubs.c
util/async.c
util/main-loop.c
util/trace-events