qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Max Reitz <mreitz@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
	Changlong Xie <xiecl.fnst@cn.fujitsu.com>,
	Alberto Garcia <berto@igalia.com>,
	qemu block <qemu-block@nongnu.org>,
	Jiang Yunhong <yunhong.jiang@intel.com>,
	Dong Eddie <eddie.dong@intel.com>,
	qemu devel <qemu-devel@nongnu.org>,
	Markus Armbruster <armbru@redhat.com>,
	Gonglei <arei.gonglei@huawei.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	zhanghailiang <zhang.zhanghailiang@huawei.com>
Subject: Re: [Qemu-devel] [PATCH v12 2/3] quorum: implement bdrv_add_child() and bdrv_del_child()
Date: Tue, 29 Mar 2016 17:59:24 +0200	[thread overview]
Message-ID: <56FAA65C.3080107@redhat.com> (raw)
In-Reply-To: <20160329155426.GI2240@work-vm>


[-- Attachment #1.1: Type: text/plain, Size: 2597 bytes --]

On 29.03.2016 17:54, Dr. David Alan Gilbert wrote:
> * Max Reitz (mreitz@redhat.com) wrote:
>> On 29.03.2016 17:50, Dr. David Alan Gilbert wrote:
>>> * Eric Blake (eblake@redhat.com) wrote:
>>>> On 03/29/2016 09:38 AM, Max Reitz wrote:
>>>>> On 17.03.2016 10:56, Wen Congyang wrote:
>>>>>> On 03/17/2016 05:48 PM, Dr. David Alan Gilbert wrote:
>>>>>
>>>>> [...]
>>>>>
>>>>>>> The children.0 notation is really confusing in the way that Berto
>>>>>>> describes; I hit this a couple of months ago and it really doesn't
>>>>>>> make sense.
>>>>>>
>>>>>> Do you mean: read from children.1 first, and then read from children.0 in
>>>>>> fifo mode? Yes, the behavior is very strange.
>>>>>
>>>>> So is this intended or is it not? In
>>>>> http://lists.nongnu.org/archive/html/qemu-block/2016-03/msg00526.html
>>>>> you said that it is.
>>>>>
>>>>> I myself would indeed say it is very strange. If I were a user, I would
>>>>> not expect this behavior. And as I developer, I think that how a BDS's
>>>>> child is used by its parent should solely depend on its role (e.g.
>>>>> whether it is "children.0" or "children.1").
>>>>
>>>> It sounds like the argument here, and in Max's thread on
>>>> query-block-node-tree, is that we DO have cases where order matters, and
>>>> so we need a way for the hot-add operation to explicitly specify where
>>>> in the list a child is inserted (whether it is being inserted as the new
>>>> primary image, or explicitly as the last resort, or somewhere in the
>>>> middle).  An optional parameter, that defaults to appending, may be ok,
>>>> but we definitely need to consider how the order of children is affected
>>>> by hot-add.
>>>
>>> Certainly in the COLO case the two children are not identical; and IMHO we need
>>> to get away from thinking about ordering and start thinking about functional
>>> namingd - children.0/children.1 doesn't suggest the fact they behave
>>> differently.
>>
>> To me it does. If quorum is operating in a mode call "FIFO" I would
>> expect some order on the child nodes, and if the child nodes are
>> actually numbered in an ascending order, that is an obvious order.
> 
> I don't understand why it's called 'FIFO'.

Because in that mode quorum successively reads from all of its children
and returns the first successful result. So the First successful Input
is the one that becomes quorum's Output (there isn't much of a
successive output, so it doesn't make much sense to call that the First
Output, though...).

I didn't name it, though. *waves hands defensively* :-)

Max


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

  reply	other threads:[~2016-03-29 15:59 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-10  2:49 [Qemu-devel] [PATCH v12 0/3] qapi: child add/delete support Changlong Xie
2016-03-10  2:49 ` [Qemu-devel] [PATCH v12 1/3] Add new block driver interface to add/delete a BDS's child Changlong Xie
2016-03-10 14:57   ` Alberto Garcia
2016-03-11  1:17     ` Changlong Xie
2016-03-10  2:49 ` [Qemu-devel] [PATCH v12 2/3] quorum: implement bdrv_add_child() and bdrv_del_child() Changlong Xie
2016-03-11 12:21   ` Alberto Garcia
2016-03-14  1:33     ` Changlong Xie
2016-03-14  6:02     ` Changlong Xie
2016-03-16 12:38       ` Alberto Garcia
2016-03-17  1:22         ` Wen Congyang
2016-03-17  9:10           ` Alberto Garcia
2016-03-17  9:44             ` Wen Congyang
2016-03-17  9:48               ` Dr. David Alan Gilbert
2016-03-17  9:56                 ` Wen Congyang
2016-03-17  9:59                   ` Dr. David Alan Gilbert
2016-03-17 10:07                   ` Alberto Garcia
2016-03-17 10:23                     ` Wen Congyang
2016-03-17 11:25                       ` Dr. David Alan Gilbert
2016-03-18  2:56                         ` Wen Congyang
2016-03-18 10:48                           ` Dr. David Alan Gilbert
2016-03-29 15:38                   ` Max Reitz
2016-03-29 15:44                     ` Eric Blake
2016-03-29 15:50                       ` Dr. David Alan Gilbert
2016-03-29 15:52                         ` Max Reitz
2016-03-29 15:54                           ` Dr. David Alan Gilbert
2016-03-29 15:59                             ` Max Reitz [this message]
2016-03-29 16:03                               ` Dr. David Alan Gilbert
2016-03-29 16:09                                 ` Max Reitz
2016-03-29 17:33                                   ` Dr. David Alan Gilbert
2016-03-29 15:51                       ` Max Reitz
2016-03-30 11:39                         ` Alberto Garcia
2016-03-30 15:07                           ` Max Reitz
2016-03-31 11:42                             ` Alberto Garcia
2016-03-31 12:31                               ` Dr. David Alan Gilbert
2016-04-01 15:20                               ` Max Reitz
2016-04-06  7:48                                 ` Wen Congyang
2016-04-11  5:18                             ` Changlong Xie
2016-04-12 16:21                               ` Max Reitz
2016-03-16  2:10     ` Wen Congyang
2016-03-10  2:49 ` [Qemu-devel] [PATCH v12 3/3] qmp: add monitor command to add/remove a child Changlong Xie
2016-03-11 12:48   ` Alberto Garcia
2016-03-28  6:09   ` Changlong Xie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56FAA65C.3080107@redhat.com \
    --to=mreitz@redhat.com \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=berto@igalia.com \
    --cc=dgilbert@redhat.com \
    --cc=eddie.dong@intel.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=xiecl.fnst@cn.fujitsu.com \
    --cc=yunhong.jiang@intel.com \
    --cc=zhang.zhanghailiang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).