From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:38022) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RunGp-0006Aq-GV for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:47:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RunGj-0007LS-NL for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:47:51 -0500 Received: from mail-pw0-f45.google.com ([209.85.160.45]:62183) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RunGj-0007LK-6Z for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:47:45 -0500 Received: by pbaa11 with SMTP id a11so8023085pba.4 for ; Tue, 07 Feb 2012 07:47:44 -0800 (PST) Sender: Paolo Bonzini Message-ID: <4F314798.8010009@redhat.com> Date: Tue, 07 Feb 2012 16:47:36 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <73865e0ce364c40e0eb65ec6b22b819d@mail.gmail.com> <4F31153E.9010205@codemonkey.ws> <4F311839.9030709@redhat.com> <4F311BBA.8000708@codemonkey.ws> <4F312FD3.5020206@zerto.com> <4F3137DB.1040503@redhat.com> <4F3139CE.4040103@zerto.com> In-Reply-To: <4F3139CE.4040103@zerto.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC PATCH] replication agent module List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Ori Mamluk Cc: Kevin Wolf , =?UTF-8?B?16LXldeT15Mg16fXk9ed?= , =?UTF-8?B?16rXldee16gg15HXnyDXkNeV16g=?= , dlaor@redhat.com, qemu-devel@nongnu.org On 02/07/2012 03:48 PM, Ori Mamluk wrote: >> The current streaming code in QEMU only deals with the former. >> Streaming to a remote server would not be supported. >> > I need it at the same time. The Rephub reads either the full volume or > parts of, and concurrently protects new IOs. Why can't QEMU itself stream the full volume in the background, and send that together with any new I/O? Is it because the rephub knows which parts are out-of-date and need recovery? In that case, as a first approximation the rephub can pass the sector at which streaming should start. But I'm also starting to wonder whether it would be simpler to use existing replication code. DRBD is more feature-rich, and you can use it over loopback or NBD devices (respectively raw and non-raw), and also store the replication metadata on a file using the loopback device. Ceph even has a userspace library and support within QEMU. Paolo