Am 05.06.2019 um 14:32 hat Vladimir Sementsov-Ogievskiy geschrieben: > child_role job already has .stay_at_node=true, so on bdrv_replace_node > operation these child are unchanged. Make block job blk behave in same > manner, to avoid inconsistent intermediate graph states and workarounds > like in mirror. > > Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com>
This feels dangerous. It does what you want it to do if the only graph change below the BlockBackend is the one in mirror_exit_common. But the user could also take a snapshot, or in the future hopefully insert a filter node, and you would then want the BlockBackend to move. To be honest, even BdrvChildRole.stay_at_node is a bit of a hack. But at least it's only used for permissions and not for the actual data flow. Kevin