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 >