On 20/01/2022 14:48, Kevin Wolf wrote:
Am 20.01.2022 um 14:22 hat Paolo Bonzini geschrieben:
On 1/19/22 19:34, Kevin Wolf wrote:
So if we go back to a bdrv_invalidate_cache() that does all the graph
manipulations (and asserts that we're in the main loop) and then have a
much smaller bdrv_co_invalidate_cache() that basically just calls into
the driver, would that solve the problem?
I was going to suggest something similar, and even name the former
bdrv_activate(). Then bdrv_activate() is a graph manipulation function,
while bdrv_co_invalidate_cache() is an I/O function.
I like this. The naming inconsistency between inactivate and
invalidate_cache has always bothered me.
Ok, I am going to apply this. Thank you for the suggestion!
Did look further, couldn’t find anything else interesting.
So I think(TM) that this blk_exp_add() is the only thing that needs fixing.
When splitting the logic between bdrv_activate and
bdrv_co_invalidate_cache, there is no need anymore to fix blk_exp_add :)
I am going to send v6 by the end of today.
Thank you,
Emanuele