All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Benoît Canet" <benoit.canet@irqsave.net>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: kwolf@redhat.com, pbonzini@redhat.com,
	"Benoît Canet" <benoit.canet@gmail.com>,
	qemu-devel@nongnu.org, stefanha@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [RFC 00/12] Qorum disk image corruption resiliency
Date: Fri, 3 Aug 2012 21:11:54 +0200	[thread overview]
Message-ID: <20120803191154.GA2069@irqsave.net> (raw)
In-Reply-To: <CAAu8pHvq3OAmst+mDYpnPcVRD8insSbKg+39JxogrJkgOMW3Bw@mail.gmail.com>

Le Friday 03 Aug 2012 à 16:14:51 (+0000), Blue Swirl a écrit :
> On Thu, Aug 2, 2012 at 10:16 AM, Benoît Canet <benoit.canet@gmail.com> wrote:
> > This patchset create a block driver implementing a qorum using three qemu disk
> > images. Writes are mirrored on the three files.
> > For the reading part the three files are read at the same time and a vote is
> > done to determine which is the majoritary qiov version. It then return this
> > majoritary version to the upper layers.
> > When three differents versions of the data are returned by the lower layer the
> > qorum is broken and the read return -EIO.
> 
> It would be pretty easy to make the number of nodes and quorum
> threshold values for both read and write selectable. Then you could
> have for example 100 nodes and write quorum at 51 (for example, 49
> nodes offline). Obviously writing the same data 100 times sequentially
> would not give very high performance but it's a start.

For now the number of disk is hardcoded to 3. But most of the code is written
with a variable number of disk in mind: just quorum_open and quorum_vote would need
to be rewritten with a few automatic changes across the code.

      reply	other threads:[~2012-08-03 19:12 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-02 10:16 [Qemu-devel] [RFC 00/12] Qorum disk image corruption resiliency Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 01/12] qorum: Add GPL v2+ header file Benoît Canet
2012-08-02 14:04   ` Eric Blake
2012-08-02 14:55     ` Benoît Canet
2012-08-02 16:07   ` Andreas Färber
2012-08-02 16:47     ` Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 02/12] qorum: Add QorumSingleAIOCB and QorumAIOCB Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 03/12] qorum: Create BDRVQorumState and BlkDriver and do init Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 04/12] qorum: Add qorum_open() Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 05/12] qorum: Add qorum_close() Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 06/12] qorum: Add qorum_getlength() Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 07/12] qorum: Add qorum_aio_writev and its dependencies Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 08/12] blkverify: Make blkverify_iovec_clone() and blkverify_iovec_compare() public Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 09/12] qorum: Add qorum_co_flush() Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 10/12] qorum: Add qorum_aio_readv Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 11/12] qorum: Add qorum mechanism Benoît Canet
2012-08-02 10:16 ` [Qemu-devel] [RFC 12/12] qorum: build feature into QEMU Benoît Canet
2012-08-02 16:06   ` Andreas Färber
2012-08-02 13:17 ` [Qemu-devel] [RFC 00/12] Qorum disk image corruption resiliency Eric Blake
2012-08-02 13:28   ` Benoît Canet
2012-08-02 18:14 ` Anthony Liguori
2012-08-02 19:22   ` Benoît Canet
2012-08-03  9:21     ` Stefan Hajnoczi
2012-08-03 16:14 ` Blue Swirl
2012-08-03 19:11   ` Benoît Canet [this message]

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=20120803191154.GA2069@irqsave.net \
    --to=benoit.canet@irqsave.net \
    --cc=benoit.canet@gmail.com \
    --cc=blauwirbel@gmail.com \
    --cc=kwolf@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@linux.vnet.ibm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.