From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36576) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X0PWR-00033D-5o for qemu-devel@nongnu.org; Fri, 27 Jun 2014 02:20:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X0PWH-0002YL-60 for qemu-devel@nongnu.org; Fri, 27 Jun 2014 02:20:31 -0400 Received: from mail.ispras.ru ([83.149.199.45]:52016) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X0PWG-0002YB-Vg for qemu-devel@nongnu.org; Fri, 27 Jun 2014 02:20:21 -0400 From: "Pavel Dovgaluk" References: <53acfed7.e3538c0a.39e2.ffffb619SMTPIN_ADDED_BROKEN@mx.google.com> In-Reply-To: Date: Fri, 27 Jun 2014 10:20:23 +0400 Message-ID: <005601cf91cf$e200ba30$a6022e90$@Dovgaluk@ispras.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-Language: ru Subject: Re: [Qemu-devel] Reverse execution and deterministic replay List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: 'Peter Crosthwaite' , =?UTF-8?Q?'Fr=C3=A9deric_Konrad'?= Cc: 'Paolo Bonzini' , qemu-devel@nongnu.org > -----Original Message----- > From: peter.crosthwaite@petalogix.com = [mailto:peter.crosthwaite@petalogix.com] On Behalf Of > Peter Crosthwaite > Sent: Friday, June 27, 2014 10:11 AM > To: Pavel Dovgaluk; Fr=C3=A9deric Konrad > Cc: qemu-devel@nongnu.org Developers; Paolo Bonzini > Subject: Re: [Qemu-devel] Reverse execution and deterministic replay >=20 > Hi Pavel, >=20 > On Fri, Jun 27, 2014 at 3:18 PM, Pavel Dovgaluk > wrote: > > Hello! > > > > We want to publish set of patches related to the reverse execution = and deterministic replay > of qemu. > > Our implementation of deterministic replay can be used for = deterministic and reverse > debugging of > > guest code through gdb remote interface. > > > > Execution recording writes non-deterministic events log, which can = be later used for > replaying the > > execution anywhere and for unlimited number of times. It also = supports checkpointing for > faster > > rewinding during reverse debugging. Execution replaying reads the = log and replays all > > non-deterministic events including external input, hardware clocks, = and interrupts. > > > > Reverse execution has the following features: > > * Deterministically replays whole system execution and all contents = of the memory, > > state of the hadrware devices, clocks, and screen of the VM. > > * Writes execution log into the file for latter replaying for = multiple times > > on different machines. > > * Supports i386, x86_64, and ARM hardware platforms. > > * Performs deterministic replay of all operations with keyboard, = mouse, network adapters, > > audio devices, serial interfaces, and physical USB devices = connected to the emulator. > > * Provides support for gdb reverse debugging commands like = reverse-step and reverse- > continue. > > * Supports auto-checkpointing for convenient reverse debugging. > > * Allows "going to the live execution" from the replay mode. > > > > Our implementation is completely tested for qemu 1.5 and is in beta = state for 2.0.50. > > > > Some details about our implementation of reverse execution can be = found in paper: > > = http://www.computer.org/csdl/proceedings/csmr/2012/4666/00/4666a553-abs.h= tml > > >=20 > Add relevant implementation details to the git commit messages. Do you mean describing the details in patches that I should submit? > > Can anyone review our patches? > > >=20 > Fred Konrad is doing a series on reverse exe at the moment. CC. Is the > an independent implementation of the same thing or are you building on > it? Our implementation is not related to Fred Konrad. > I suggest posting a full RFC, this looks to me just like a cover > letter but without a series. Of course I will post a full RFC with details of implementation. >=20 > Note that we are going into hard freeze imminently so there will be > some delay for merge. Pavel Dovgaluk