On Tue 07 Jul 2015 10:43:00 AM CEST, Wen Congyang wrote:
> Signed-off-by: Wen Congyang <we...@cn.fujitsu.com>
> Signed-off-by: zhanghailiang <zhang.zhanghaili...@huawei.com>
> Signed-off-by: Gonglei <arei.gong...@huawei.com>
> Cc: Alberto Garcia <be...@igalia.com>

Sorry for being so late with this, I was on holidays during July.

> +static void quorum_del_child(BlockDriverState *bs, BlockDriverState 
> *child_bs,
> +                             Error **errp)
> +{
> +    BDRVQuorumState *s = bs->opaque;
> +    int i;
> +
> +    for (i = 0; i < s->num_children; i++) {
> +        if (s->bs[i] == child_bs) {
> +            break;
> +        }
> +    }
> +
> +    if (i == s->num_children) {
> +        error_setg(errp, "Invalid child");
> +        return;
> +    }
> +
> +    if (s->num_children <= s->threshold) {
> +        error_setg(errp, "Cannot remove any more child");
> +        return;
> +    }

I think that should be "Cannot remove any more children".

You could also make it a bit more explanatory by saying "The number of
children cannot be lower than the vote threshold" or something like
that.

> +    bdrv_drain(bs);
> +    /* We can safe remove this child now */
> +    memmove(&s->bs[i], &s->bs[i+1], (s->num_children - i - 1) * sizeof(void 
> *));

s/safe/safely/

Apart from that, the code looks good to me, so

Reviewed-by: Alberto Garcia <be...@igalia.com>

Berto

Reply via email to