OSDN Git Service

block: introduce assert_bdrv_graph_writable
authorEmanuele Giuseppe Esposito <eesposit@redhat.com>
Thu, 3 Mar 2022 15:15:59 +0000 (10:15 -0500)
committerKevin Wolf <kwolf@redhat.com>
Fri, 4 Mar 2022 17:18:25 +0000 (18:18 +0100)
commit696bf4c78c4640026c827c931a18385b687c66e8
treed984d5dd358d13399bc5f11cbe1d75437edba816
parent967d7905d1b568355c5422d595dd1e3a057c43f6
block: introduce assert_bdrv_graph_writable

We want to be sure that the functions that write the child and
parent list of a bs are under BQL and drain.

BQL prevents from concurrent writings from the GS API, while
drains protect from I/O.

TODO: drains are missing in some functions using this assert.
Therefore a proper assertion will fail. Because adding drains
requires additional discussions, they will be added in future
series.

Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Message-Id: <20220303151616.325444-15-eesposit@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block.c
include/block/block_int-global-state.h