OSDN Git Service

quorum: Stop marking it as a filter
authorMax Reitz <mreitz@redhat.com>
Tue, 18 Feb 2020 10:34:47 +0000 (11:34 +0100)
committerKevin Wolf <kwolf@redhat.com>
Tue, 18 Feb 2020 10:55:40 +0000 (11:55 +0100)
commit3c7f75b3219e6bd59cd4c6867e695449048ac152
tree83cac21b0a66c612021e5503db157911681ac199
parent6e9cc0518113da423252a1fea328f27dc7bcf997
quorum: Stop marking it as a filter

Quorum is not a filter, for example because it cannot guarantee which of
its children will serve the next request.  Thus, any of its children may
differ from the data visible to quorum's parents.

We have other filters with multiple children, but they differ in this
aspect:

- blkverify quits the whole qemu process if its children differ.  As
  such, we can always skip it when we want to skip it (as a filter node)
  by going to any of its children.  Both have the same data.

- replication generally serves requests from bs->file, so this is its
  only actually filtered child.

- Block job filters currently only have one child, but they will
  probably get more children in the future.  Still, they will always
  have only one actually filtered child.

Having "filters" as a dedicated node category only makes sense if you
can skip them by going to a one fixed child that always shows the same
data as the filter node.  Quorum cannot fulfill this, so it is not a
filter.

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Message-Id: <20200218103454.296704-13-mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/quorum.c