[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver
From: |
Benoît Canet |
Subject: |
Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver |
Date: |
Sat, 5 Oct 2013 00:25:36 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Le Friday 04 Oct 2013 à 16:31:56 (+0200), Max Reitz a écrit :
> On 2013-10-02 14:39, Benoît Canet wrote:
> >It must be applied on top of "block: Add
> >BlockDriver.bdrv_check_ext_snapshot."
> >
> >This patchset create a block driver implementing a quorum using total qemu
> >disk
> >images. Writes are mirrored on the $total files.
> >For the reading part the $total files are read at the same time and a vote is
> >done to determine if a qiov version is present $threshold or more times. It
> >then
> >return this majority version to the upper layers.
> >When i < $threshold versions of the data are returned by the lower layer the
> >quorum is broken and the read return -EIO.
> >
> >The goal of this patchset is to be turned in a QEMU block filter living just
> >above raw-*.c and below qcow2/qed when the required infrastructure will be
> >done.
> >
> >Main use of this feature will be people using NFS appliances which can be
> >subjected to bitflip errors.
> >
> >This patchset can be used to replace blkverify and the out of tree blkmirror.
> >
> >v9: integrate latests comments from kevin
> >
> >Benoît Canet (11):
> > quorum: Create quorum.c, add QuorumSingleAIOCB and QuorumAIOCB.
> > quorum: Create BDRVQuorumState and BlkDriver and do init.
> > quorum: Add quorum_aio_writev and its dependencies.
> > blkverify: Extract qemu_iovec_clone() and qemu_iovec_compare() from
> > blkverify.
> > quorum: Add quorum_aio_readv.
> > quorum: Add quorum mechanism.
> > quorum: Add quorum_getlength().
> > quorum: Add quorum_invalidate_cache().
> > quorum: Add quorum_co_get_block_status.
> > quorum: Add quorum_co_flush().
> > quorum: Add quorum_open() and quorum_close().
> >
> > block/Makefile.objs | 1 +
> > block/blkverify.c | 108 +----
> > block/quorum.c | 1035
> > +++++++++++++++++++++++++++++++++++++++++++++
> > configure | 36 ++
> > include/monitor/monitor.h | 2 +
> > include/qemu-common.h | 2 +
> > monitor.c | 2 +
> > util/iov.c | 103 +++++
> > 8 files changed, 1183 insertions(+), 106 deletions(-)
> > create mode 100644 block/quorum.c
> >
>
> Could you add a qemu-iotest if possible?
Thanks for the review Max.
I will iterate.
Best regards
Benoît
>
> Max
>
- Re: [Qemu-devel] [PATCH V9 06/11] quorum: Add quorum mechanism., (continued)
[Qemu-devel] [PATCH V9 11/11] quorum: Add quorum_open() and quorum_close()., Benoît Canet, 2013/10/02
Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver, Max Reitz, 2013/10/04