From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=42308 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PsxdO-0003bm-K3 for qemu-devel@nongnu.org; Fri, 25 Feb 2011 08:23:03 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PsxdN-0008JG-6b for qemu-devel@nongnu.org; Fri, 25 Feb 2011 08:23:02 -0500 Received: from mail-vw0-f45.google.com ([209.85.212.45]:39815) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PsxdN-0008Ip-3d for qemu-devel@nongnu.org; Fri, 25 Feb 2011 08:23:01 -0500 Received: by vws19 with SMTP id 19so1488705vws.4 for ; Fri, 25 Feb 2011 05:22:59 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <-1737654525499315352@unknownmsgid> References: <4D5BC467.4070804@redhat.com> <4D5E4271.80501@redhat.com> <4D5E8031.5020402@codemonkey.ws> <4D637A20.9020307@redhat.com> <4D650F10.3060900@redhat.com> <4D651858.9040106@codemonkey.ws> <4D652675.1070908@redhat.com> <4D652868.8030908@codemonkey.ws> <4D6529A9.3090509@redhat.com> <4D652CD3.5030806@codemonkey.ws> <4D652FBA.9000104@redhat.com> <-1737654525499315352@unknownmsgid> Date: Fri, 25 Feb 2011 13:22:59 +0000 Message-ID: Subject: Re: [Qemu-devel] Re: Strategic decision: COW format From: Stefan Hajnoczi Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Pavel Dovgaluk Cc: Kevin Wolf , Stefan Hajnoczi , Markus Armbruster , qemu-devel@nongnu.org, Avi Kivity , Chunqiang Tang On Fri, Feb 25, 2011 at 11:20 AM, Pavel Dovgaluk wrote: > >> On 02/23/2011 05:50 PM, Anthony Liguori wrote: >> >> I still don't see. =A0What would you do with thousands of checkpoints= ? >> > >> > >> > For reverse debugging, if you store checkpoints at a rate of save, >> > every 10ms, and then degrade to storing every 100ms after 1 second, >> > etc. you'll have quite a large number of snapshots pretty quickly. >> > The idea of snapshotting with reverse debugging is that instead of >> > undoing every instruction, you can revert to the snapshot before, and >> > then replay the instruction stream until you get to the desired point >> > in time. >> >> You cannot replay the instruction stream since inputs (interrupts, rdtsc >> or other timers, I/O) will be different. =A0You need Kemari for this. > > =A0I've created the technology for replaying instruction stream and all o= f the > inputs. This technology is similar to deterministic replay in VMWare. > =A0Now I need something to save machine state in many checkpoints to > implement reverse debugging. > =A0I think COW2 may be useful for it (or I should create something like t= his). Or the BTRFS_IOC_CLONE ioctl on the btrfs filesystem. You can copy-on-write clone a file using it. Stefan