mbox series

[RFC,v2,0/4] blockdev-replace

Message ID 20211222160254.226909-1-vsementsov@virtuozzo.com (mailing list archive)
Headers show
Series blockdev-replace | expand

Message

Vladimir Sementsov-Ogievskiy Dec. 22, 2021, 4:02 p.m. UTC
Hi all!

v2:

1. Let's start with minimal functionality: replace only one specific
child.

2. Explicit type of parent: qdev / export / driver

Hmm, 'driver' is for BlockDriverState.. Any better idea? I don't want to
call it "node" or even "block-node", as finally, devices and exports are
kind of nodes too in the whole block graph..

3. I think it's better to start with x- prefix

Plans for v3:

- add tests of filter insertion and removing
- add qmp transaction support

Vladimir Sementsov-Ogievskiy (4):
  block-backend: blk_root(): drop const specifier on return type
  block/export: add blk_by_export_id()
  block: make bdrv_find_child() function public
  qapi: add blockdev-replace command

 qapi/block.json                | 61 ++++++++++++++++++++++++++++++++++
 include/block/block_int.h      |  1 +
 include/sysemu/block-backend.h |  3 +-
 block.c                        | 13 ++++++++
 block/block-backend.c          |  2 +-
 block/export/export.c          | 18 ++++++++++
 block/qapi-sysemu.c            | 56 +++++++++++++++++++++++++++++++
 blockdev.c                     | 14 --------
 8 files changed, 152 insertions(+), 16 deletions(-)