Am 30.01.2020 um 22:44 hat Max Reitz geschrieben: > We will need this to verify that Quorum can let one of its children be > replaced without breaking anything else. > > Signed-off-by: Max Reitz <mre...@redhat.com> > --- > block/quorum.c | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/block/quorum.c b/block/quorum.c > index 59cd524502..6a7224c9e4 100644 > --- a/block/quorum.c > +++ b/block/quorum.c > @@ -67,6 +67,13 @@ typedef struct QuorumVotes { > > typedef struct QuorumChild { > BdrvChild *child; > + > + /* > + * If set, check whether this node can be replaced without any > + * other parent noticing: Unshare CONSISTENT_READ, and take the > + * WRITE permission. > + */ > + bool to_be_replaced;
I don't understand these permission changes. How does (preparing for) detaching a node from quorum make its content invalid? And why do we suddenly need WRITE permissions even if the quorum node is only used read-only? The comment is a bit unclear, too. "check whether" implies that both outcomes could be true, but it doesn't say what happens in either case. Is this really "make sure that"? Kevin