Clang has a generic __annotate__ attribute that can be used by static analyzers to understand properties of functions and analyze the control flow.
Unlike TSA annotations, the __annotate__ attribute applies to function pointers as well, which is very fortunate because many BlockDriver function driver run in coroutines. Paolo v1->v2: improved comments for patch 2 Alberto Faria (2): block: Add no_coroutine_fn and coroutine_mixed_fn marker coroutine: annotate coroutine_fn for libclang include/block/block-common.h | 11 +++++---- include/qemu/coroutine.h | 43 ++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+), 4 deletions(-) -- 2.38.1