On 17.05.21 08:44, Vladimir Sementsov-Ogievskiy wrote:
Finally, copy-before-write gets own .bdrv_open and .bdrv_close
handlers, block_init() call and becomes available through bdrv_open().

To achieve this:

  - cbw_init gets unused flags argument and becomes cbw_open
  - block_copy_state_free() call moved to new cbw_close()
  - in bdrv_cbw_append:
    - options are completed with driver and node-name, and we can simply
      use bdrv_insert_node() to do both open and drained replacing
  - in bdrv_cbw_drop:
    - cbw_close() is now responsible for freeing s->bcs, so don't do it
      here

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com>
---
  block/copy-before-write.c | 60 ++++++++++++++++++---------------------
  1 file changed, 28 insertions(+), 32 deletions(-)

Reviewed-by: Max Reitz <mre...@redhat.com>


Reply via email to