GRAPH_RDLOCK_GUARD() and GRAPH_RDLOCK_GUARD_MAINLOOP() only take a reader lock for the graph, so the correct annotation for them to use is TSA_ASSERT_SHARED rather than TSA_ASSERT.
Signed-off-by: Kevin Wolf <kw...@redhat.com> --- include/block/graph-lock.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/block/graph-lock.h b/include/block/graph-lock.h index 7ef391fab3..adaa3ed089 100644 --- a/include/block/graph-lock.h +++ b/include/block/graph-lock.h @@ -210,7 +210,7 @@ typedef struct GraphLockable { } GraphLockable; * unlocked. TSA_ASSERT() makes sure that the following calls know that we * hold the lock while unlocking is left unchecked. */ -static inline GraphLockable * TSA_ASSERT(graph_lock) TSA_NO_TSA +static inline GraphLockable * TSA_ASSERT_SHARED(graph_lock) TSA_NO_TSA graph_lockable_auto_lock(GraphLockable *x) { bdrv_graph_co_rdlock(); @@ -254,7 +254,7 @@ typedef struct GraphLockableMainloop { } GraphLockableMainloop; * unlocked. TSA_ASSERT() makes sure that the following calls know that we * hold the lock while unlocking is left unchecked. */ -static inline GraphLockableMainloop * TSA_ASSERT(graph_lock) TSA_NO_TSA +static inline GraphLockableMainloop * TSA_ASSERT_SHARED(graph_lock) TSA_NO_TSA graph_lockable_auto_lock_mainloop(GraphLockableMainloop *x) { bdrv_graph_rdlock_main_loop(); -- 2.40.0