On Mon, Aug 20, 2012 at 11:12 AM, Benoît Canet <benoit.ca...@irqsave.net> wrote: > Le Tuesday 14 Aug 2012 à 16:14:02 (+0200), Benoît Canet a écrit : >> This patchset create a block driver implementing a quorum using m qemu disk >> images. Writes are mirrored on the m files. >> For the reading part the m files are read at the same time and a vote is >> done to determine if a qiov version is present n or more times. It then >> return >> this majority version to the upper layers. >> When i < n 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. >> >> usage: -drive >> file=quorum:n/m:image_1.raw:...:image_m.raw,if=virtio,cache=none > > stefanha: I am wondering what would be needed to do in order to have COR and > streaming working > with quorum.c ?
.bdrv_is_allocated()/.bdrv_co_is_allocated() needs to be supported by block/quorum.c. Have you tried it and found a problem? Stefan