[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 0/4] qapi: child add/delete support
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [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