From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=46302 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PsHOf-0008HM-Ne for qemu-devel@nongnu.org; Wed, 23 Feb 2011 11:17:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PsHOe-0002lT-Ni for qemu-devel@nongnu.org; Wed, 23 Feb 2011 11:17:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:29658) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PsHOe-0002lG-CW for qemu-devel@nongnu.org; Wed, 23 Feb 2011 11:17:00 -0500 Message-ID: <4D6532A3.2080409@redhat.com> Date: Wed, 23 Feb 2011 17:15:31 +0100 From: Kevin Wolf MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: Strategic decision: COW format 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> <4D653016.8040304@codemonkey.ws> In-Reply-To: <4D653016.8040304@codemonkey.ws> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Chunqiang Tang , Markus Armbruster , Avi Kivity , Stefan Hajnoczi , qemu-devel@nongnu.org Am 23.02.2011 17:04, schrieb Anthony Liguori: > On 02/23/2011 10:03 AM, Avi Kivity wrote: >> On 02/23/2011 05:50 PM, Anthony Liguori wrote: >>>> I still don't see. What 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. You need Kemari for this. > > Yes, I'm well aware of this. I don't think all the pieces where ever > really there to do this. So why exactly was this a requirement for internal snapshots to be consider usable in a reasonable way? ;-) Anyway, I actually think with internal snapshots you're better suited to implement something like this than with external snapshots. Kevin