qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH v5 0/4] qapi: child add/delete support


From: Dr. David Alan Gilbert
Subject: Re: [Qemu-block] [PATCH v5 0/4] qapi: child add/delete support
Date: Tue, 22 Sep 2015 12:15:54 +0100
User-agent: Mutt/1.5.24 (2015-08-30)

* Wen Congyang (address@hidden) wrote:
> If quorum's child is broken, we can use mirror job to replace it.
> But sometimes, the user only need to remove the broken child, and
> add it later when the problem is fixed.
> 

Hi,
  Two questions:
    1) Do you have an example of a pair of add/remove commands that work
      together? (I'm not quite sure I understand where the ID for the remove
      comes from).

    2) If the child has failed and is not responding to block operations
       at all (e.g a networking failure to an nbd device which may take minutes
       to time out); how do you recover - flush or drain on the devices
       hang at that point.

(I was trying to test recovery from a failed secondary using the July COLO
release; but the primary gets stuck in bdrv_drain or bdrv_flush if I kill
the secondary in the right way).

Dave


> It is based on the following patch:
> http://lists.nongnu.org/archive/html/qemu-devel/2015-09/msg04579.html
> 
> ChangLog:
> v5:
> 1. Address Eric Blake's comments
> v4:
> 1. drop nbd driver's implementation. We can use human-monitor-command
>    to do it.
> 2. Rename the command name.
> v3:
> 1. Don't open BDS in bdrv_add_child(). Use the existing BDS which is
>    created by the QMP command blockdev-add.
> 2. The driver NBD can support filename, path, host:port now.
> v2:
> 1. Use bdrv_get_device_or_node_name() instead of new function
>    bdrv_get_id_or_node_name()
> 2. Update the error message
> 3. Update the documents in block-core.json
> 
> Wen Congyang (4):
>   Add new block driver interface to add/delete a BDS's child
>   quorum: implement bdrv_add_child() and bdrv_del_child()
>   qmp: add monitor command to add/remove a child
>   hmp: add monitor command to add/remove a child
> 
>  block.c                   | 56 ++++++++++++++++++++++++++++++++++--
>  block/quorum.c            | 72 
> +++++++++++++++++++++++++++++++++++++++++++++--
>  blockdev.c                | 48 +++++++++++++++++++++++++++++++
>  hmp-commands.hx           | 28 ++++++++++++++++++
>  hmp.c                     | 20 +++++++++++++
>  hmp.h                     |  2 ++
>  include/block/block.h     |  8 ++++++
>  include/block/block_int.h |  5 ++++
>  qapi/block-core.json      | 34 ++++++++++++++++++++++
>  qmp-commands.hx           | 61 +++++++++++++++++++++++++++++++++++++++
>  10 files changed, 329 insertions(+), 5 deletions(-)
> 
> -- 
> 2.4.3
> 
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK



reply via email to

[Prev in Thread] Current Thread [Next in Thread]