Re: [Qemu-devel] [RFC] reverse execution.

2013-05-29 Thread Pavel Dovgaluk
code that you translate, instruction where you stopped (using single-step or reverse-single-step commands). You can find some details here: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=truearnumber=6178942contentType=Conferenc e+Publications Pavel Dovgaluk

[Qemu-devel] [PATCH] Fix processing of the MMU faults caused by the helper functions

2013-11-18 Thread Pavel Dovgaluk
, the return address will point to that helper. That is why CPU state cannot be restored in the case of MMU fault. This patch introduces several inline helpers to load return address at the right place. Signed-off-by: Pavel Dovgaluk pavel.dovga...@gmail.com --- include/exec/exec-all.h | 27

Re: [Qemu-devel] [PATCH] Fix processing of the MMU faults caused by the helper functions

2013-12-04 Thread Pavel Dovgaluk
Hello! Will anyone comment this patch? Pavel Dovgaluk -Original Message- From: qemu-devel-bounces+pavel.dovgaluk=ispras...@nongnu.org [mailto:qemu-devel- bounces+pavel.dovgaluk=ispras...@nongnu.org] On Behalf Of Pavel Dovgaluk Sent: Monday, November 18, 2013 2:58 PM To: 'qemu

[Qemu-devel] Deterministic replay

2010-12-22 Thread Pavel Dovgaluk
are these actions for? When I remove any of them the booting process is OK. Please help me to understand interrupts mechanism or give links where to read about it. I apply my modifications to version 0.12.3 of Qemu. Please refer to it. Pavel Dovgaluk

RE: [Qemu-devel] Deterministic replay

2010-12-22 Thread Pavel Dovgaluk
these events in the execution log (for latter replay) I need to synchronize them with execution of guest code. The way which I am using for it is allowing execution stop at any point of the guest code. Pavel Dovgaluk

[Qemu-devel] [PATCH] Fix multiple qemu-options.def generation

2011-01-14 Thread Pavel Dovgaluk
the build for the first time. This works in both directions: after build was broken, you can fix qemu-options.hx, but qemu will not build successfully, until you delete qemu-options.def files. Signed-off-by: Pavel Dovgaluk pavel.dovga...@gmail.com --- Makefile.objs |4 ++-- 1 files

RE: [Qemu-devel] [PATCH] Fix multiple qemu-options.def generation

2011-01-14 Thread Pavel Dovgaluk
2011/1/14 Pavel Dovgaluk pavel.dovga...@ispras.ru: -qemu-options.def: $(SRC_PATH)/qemu-options.hx +%qemu-options.def: $(SRC_PATH)/qemu-options.hx What tree is this patch against? qemu.git/master does have a rule for qemu-options.def in Makefile.objs. Please retest on qemu.git/master

[Qemu-devel] [PATCH] Correct win32 timers deleting

2011-01-24 Thread Pavel Dovgaluk
This patch fixes resource leaks caused by quitting qemu with exit() function on win32 host. Timer object should be freed not only at the end of the main function, but by every of the application exits. Signed-off-by: --- qemu-timer.c | 14 +++--- vl.c |1 - 2 files changed,

[Qemu-devel] [PATCH] Correct win32 timers deleting

2011-01-24 Thread Pavel Dovgaluk
This patch fixes resource leaks caused by quitting qemu with exit() function on win32 host. Timer object should be freed not only at the end of the main function, but by every of the application exits. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- qemu-timer.c | 14 +++---

[Qemu-devel] [PATCH] Correct win32 timers deleting

2011-01-24 Thread Pavel Dovgaluk
This patch fixes resource leaks caused by quitting qemu with exit() function on win32 host. Timer object should be freed not only at the end of the main function, but by every of the application exits. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- qemu-timer.c | 16

RE: [Qemu-devel] [PATCH] Correct win32 timers deleting

2011-01-24 Thread Pavel Dovgaluk
) + timeEndPeriod(data-period); CODING_STYLE requires {} for both if statements. Ok, inserted in new version. Please check your patch using scripts/checkpatch.pl. Now this script says, that patch is ok. Pavel Dovgaluk

[Qemu-devel] [PATCH] Correct win32 timers deleting v.3

2011-01-26 Thread Pavel Dovgaluk
This patch fixes resource leaks caused by quitting qemu with exit() function on win32 host. Timer object should be freed not only at the end of the main function, but by every of the application exits. v.3: Fixed all the issues found in previous messages with patch. Signed-off-by: Pavel

RE: [Qemu-devel] [PATCH] Correct win32 timers deleting v.3

2011-02-02 Thread Pavel Dovgaluk
Hello. Anybody interested in this patch? Pavel Dovgaluk -Original Message- From: qemu-devel-bounces+pavel.dovgaluk=ispras...@nongnu.org [mailto:qemu- devel-bounces+pavel.dovgaluk=ispras...@nongnu.org] On Behalf Of Pavel Dovgaluk Sent: Wednesday, January 26, 2011 11:06 AM To: qemu

[Qemu-devel] [PATCH] Network functions patches for win32

2011-02-10 Thread Pavel Dovgaluk
This patch contains some fixes for network functions, working in Windows environment, and consists of two parts: 1. net/socket.c fix MSDN includes the following in WSAEALREADY error description for connect() function: To preserve backward compatibility, this error is reported as

RE: [Qemu-devel] Re: [PATCH] Fix multiple qemu-options.def generation

2011-02-10 Thread Pavel Dovgaluk
directive. Does this help? This patch was for older version of qemu. Current one does not have this problem. Pavel Dovgaluk

[Qemu-devel] [PATCH] Fixing network over sockets implementation for win32

2011-02-21 Thread Pavel Dovgaluk
MSDN includes the following in WSAEALREADY error description for connect() function: To preserve backward compatibility, this error is reported as WSAEINVAL to Winsock applications that link to either Winsock.dll or Wsock32.dll. So check of this error code was added to allow network

[Qemu-devel] [PATCH] Fixing tap adapter for win32

2011-02-21 Thread Pavel Dovgaluk
This fix allows connection of internal VLAN to the external TAP interface. If tap_win32_write function always returns 0, the TAP network interface in QEMU is disabled. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- net/tap-win32.c |2 +- 1 files changed, 1 insertions(+), 1

RE: [Qemu-devel] Re: Strategic decision: COW format

2011-02-25 Thread Pavel Dovgaluk
in many checkpoints to implement reverse debugging. I think COW2 may be useful for it (or I should create something like this). Pavel Dovgaluk

[Qemu-devel] [PATCH] Fix ioapic vmstate

2011-06-17 Thread Pavel Dovgaluk
This patch fixes save/restore vmstate of IOAPIC. When irr member of IOAPICState is not saved and loaded, restoring becomes non-deterministic, because irr is kept from state of VM that was before loading. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- hw/ioapic.c |1 + 1

[Qemu-devel] [PATCH] Fix serial interface vmstate

2011-06-21 Thread Pavel Dovgaluk
This patch fixes save/restore of serial interface's state. It includes changing of fcr setter function (it now does not invoke an interrupt while loading vmstate), and saving/restoring all fields that describe the state of serial interface (including timers). Signed-off-by: Pavel Dovgalyuk

Re: [Qemu-devel] [PATCH] Fix serial interface vmstate

2011-06-22 Thread Pavel Dovgaluk
Pavel Dovgaluk pavel.dovga...@ispras.ru wrote: This patch fixes save/restore of serial interface's state. It includes changing of fcr setter function (it now does not invoke an interrupt while loading vmstate), and saving/restoring all fields that describe the state of serial

Re: [Qemu-devel] [PATCH] Fix serial interface vmstate

2011-06-22 Thread Pavel Dovgaluk
is disabled, the state will not be saved, isn't it? Pavel Dovgaluk

Re: [Qemu-devel] [PATCH] Fix serial interface vmstate

2011-06-22 Thread Pavel Dovgaluk
an will not be saved, we will have to clear it before loading every time? So there should be multiple subsections for every possible field? E.g. timers are saved only if they are pending, thr_ipending is saved only when it is nonzero, and so on. Do you mean that? Pavel Dovgaluk

Re: [Qemu-devel] [PATCH] Fix serial interface vmstate

2011-06-22 Thread Pavel Dovgaluk
On 2011-06-22 11:15, Pavel Dovgaluk wrote: What is the purpose of subsections? To skip the new fields whenever possible. That would allow to continue saving a vmstate on a new version of qemu and then restoring it on an older one. Do you have an idea how to implement needed

[Qemu-devel] Fiber switching and stack protection

2012-04-06 Thread Pavel Dovgaluk
in qemu_coroutine_switch of coroutine-win32.c file. But when I remove -fstack-protector-all option from makefile nothing changes - an exception occurs again. Does anyone have an idea about such behavior? Pavel Dovgaluk

[Qemu-devel] [PATCH] Restore FPU round state after loading the VM state

2012-06-20 Thread Pavel Dovgaluk
Restore FPU round state after loading the VM state. This patch fixes different behavior after loading VM state with different FPU flags set. Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com --- target-i386/cpu.c |1 + target-i386/cpu.h |2 ++ target-i386/machine.c |

[Qemu-devel] [PATCH] Prevent disk data loss when closing qemu

2012-05-16 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu window. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- vl.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/vl.c b/vl.c index 23ab3a3..b6cfd29 100644 --- a/vl.c +++ b/vl.c @@ -3650,10 +3650,10 @@ int main(int argc,

Re: [Qemu-devel] [PATCH] Prevent disk data loss when closing qemu

2012-05-16 Thread Pavel Dovgaluk
I use qemu under Windows and it has two windows when executes - console and SDL ones. When I close SDL window main loop function terminates correctly, and when I close console window to terminate qemu then the code after main loop is not executed. Pavel Dovgaluk From: dunrong huang

Re: [Qemu-devel] [PATCH] Prevent disk data loss when closing qemu

2012-05-23 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 22/05/2012 10:51, Kevin Wolf ha scritto: Am 16.05.2012 12:16, schrieb Pavel Dovgaluk: I use qemu under Windows and it has two windows when executes - console and SDL ones. When I close SDL window main

[Qemu-devel] [PATCH v2] Prevent disk data loss when closing qemu

2012-05-24 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu console window under Windows 7. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- os-win32.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/os-win32.c b/os-win32.c index ad76370..66c39b8 100644 --- a/os-win32.c +++

Re: [Qemu-devel] [PATCH] Prevent disk data loss when closing qemu

2012-05-24 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 23/05/2012 08:48, Pavel Dovgaluk ha scritto: I'm not against your patch and it's probably 1.1 material, but there may be more shutdown logic that we're missing if you close the console window

[Qemu-devel] [PATCH] ANSI escape characters support for Windows console

2012-05-29 Thread Pavel Dovgaluk
This patch adds support of ANSI escape characters used in readline module to impelementation of stdio character device for Windows. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- qemu-char.c | 48 ++-- 1 files changed, 38 insertions(+),

[Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-29 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu console window under Windows 7. v3. Comment for Sleep() parameter was updated. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- os-win32.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/os-win32.c b/os-win32.c

Re: [Qemu-devel] [PATCH 1.1 v2] Prevent disk data loss when closing qemu

2012-05-29 Thread Pavel Dovgaluk
From: Anthony Liguori [mailto:anth...@codemonkey.ws] Sent: Thursday, May 24, 2012 5:12 PM On 05/24/2012 05:10 AM, Paolo Bonzini wrote: Il 24/05/2012 09:42, Pavel Dovgaluk ha scritto: Prevent disk data loss when closing qemu console window under Windows 7. Signed-off-by: Pavel

[Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-30 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu console window under Windows 7. v3. Comment for Sleep() parameter was updated. Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com --- os-win32.c |8 +++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/os-win32.c b/os-win32.c

Re: [Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-30 Thread Pavel Dovgaluk
From: Anthony Liguori [mailto:anth...@codemonkey.ws] Sent: Wednesday, May 30, 2012 6:29 AM On 05/29/2012 09:26 PM, Pavel Dovgaluk wrote: Prevent disk data loss when closing qemu console window under Windows 7. v3. Comment for Sleep() parameter was updated. Signed-off-by: Pavel

Re: [Qemu-devel] Fiber switching and stack protection

2012-04-13 Thread Pavel Dovgaluk
-Original Message- From: Paolo Bonzini [mailto:pbonz...@redhat.com] Sent: Thursday, April 12, 2012 8:57 PM To: Stefan Weil Cc: Kevin Wolf; 'qemu-devel'; Pavel Dovgaluk Subject: Re: [Qemu-devel] Fiber switching and stack protection Il 12/04/2012 18:31, Stefan Weil ha scritto: Am

Re: [Qemu-devel] Fiber switching and stack protection

2012-04-16 Thread Pavel Dovgaluk
specifiers). It works fine too. Pavel Dovgaluk

[Qemu-devel] [PATCH] Using TLS instead of __thread in coroutines implementation for win32

2012-04-16 Thread Pavel Dovgaluk
This patch directly uses WinAPI TLS instead of __thread specifier. It was created because of gcc-mingw error which causes incorrect operation of __thread variables. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/coroutine-win32.c b/coroutine-win32.c index

Re: [Qemu-devel] Fiber switching and stack protection

2012-04-16 Thread Pavel Dovgaluk
Il 16/04/2012 08:24, Pavel Dovgaluk ha scritto: By the way, I also created implementation of coroutine-win32.c, which uses WinAPI TLS functions directly (without using __thread specifiers). It works fine too. Cool, can you submit it? I submitted the patch in a separate message

[Qemu-devel] [PATCH] Save/load PC speaker internal state

2012-08-27 Thread Pavel Dovgaluk
Save PC speaker state to remove differences between system states after saving the snapshot and after loading it again. This patch is needed for deterministic replay of the execution. Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com --- hw/pcspk.c | 18 ++ 1 files

[Qemu-devel] [PATCH] Save/load PC speaker internal state (v2)

2012-08-28 Thread Pavel Dovgaluk
Save PC speaker state to remove differences between system states after saving the snapshot and after loading it again. This patch is needed for deterministic replay of the execution. v2: Do not save the data that cannot affect the guest code behavior. Signed-off-by: Pavel

Re: [Qemu-devel] [PATCH] Save/load PC speaker internal state

2012-08-28 Thread Pavel Dovgaluk
-Original Message- From: Peter Maydell [mailto:peter.mayd...@linaro.org] Sent: Monday, August 27, 2012 4:50 PM To: Pavel Dovgaluk Cc: qemu-devel Subject: Re: [Qemu-devel] [PATCH] Save/load PC speaker internal state On 27 August 2012 13:21, Pavel Dovgaluk pavel.dovga...@ispras.ru

Re: [Qemu-devel] [PATCH] Save/load PC speaker internal state (v2)

2012-08-29 Thread Pavel Dovgaluk
-Original Message- From: Jan Kiszka [mailto:jan.kis...@web.de] Sent: Tuesday, August 28, 2012 11:13 AM To: Pavel Dovgaluk Cc: 'qemu-devel' Subject: Re: [PATCH] Save/load PC speaker internal state (v2) On 2012-08-28 08:58, Pavel Dovgaluk wrote: Save PC speaker state to remove

[Qemu-devel] [PATCH] i386 ROR r8/r16 instruction fix

2013-04-15 Thread Pavel Dovgaluk
Fixed EFLAGS corruption by ROR r8/r16 instruction located at the end of the TB. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- target-i386/translate.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index

Re: [Qemu-devel] [PATCH] Added cleanup for Win32 TAP interface

2013-04-16 Thread Pavel Dovgaluk
Hello! From: Stefan Weil [mailto:s...@weilnetz.de] Am 15.04.2013 17:55, schrieb Paolo Bonzini: Il 13/03/2013 13:23, Pavel Dovgaluk ha scritto: Added cleanup for Win32 TAP interface. Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com Stefan, did this slip? Paolo Yes, I had

[Qemu-devel] [PATCH] Added cleanup for Win32 TAP interface

2013-03-13 Thread Pavel Dovgaluk
Added cleanup for Win32 TAP interface. Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com --- net/tap-win32.c |8 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/tap-win32.c b/net/tap-win32.c index 91e9e84..1c1176c 100644 --- a/net/tap-win32.c +++

Re: [Qemu-devel] [RFC PATCH v2 00/49] Series short description

2014-07-28 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 17/07/2014 13:01, Pavel Dovgalyuk ha scritto: This set of patches is related to the reverse execution and deterministic replay of qemu execution Our implementation of deterministic replay can be used for

Re: [Qemu-devel] [RFC PATCH v2 10/49] rtl8139: adding new fields to vmstate

2014-07-28 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 17/07/2014 13:02, Pavel Dovgalyuk ha scritto: This patch adds virtual clock-dependent timers to VMState to allow correct saving and restoring the state of RTL8139 network controller. Signed-off-by: Pavel

Re: [Qemu-devel] [RFC PATCH v2 07/49] kvmapic: fixing loading vmstate

2014-07-29 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 17/07/2014 13:02, Pavel Dovgalyuk ha scritto: diff --git a/hw/intc/apic_common.c b/hw/intc/apic_common.c index ce3d903..9d75ee0 100644 --- a/hw/intc/apic_common.c +++ b/hw/intc/apic_common.c @@ -347,7

Re: [Qemu-devel] [RFC PATCH v2 06/49] serial: fixing vmstate for save/restore

2014-07-30 Thread Pavel Dovgaluk
-Original Message- From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Sent: Monday, July 28, 2014 1:59 PM To: Pavel Dovgalyuk; qemu-devel@nongnu.org Cc: peter.mayd...@linaro.org; peter.crosthwa...@xilinx.com; mark.bur...@greensocs.com;

Re: [Qemu-devel] [RFC PATCH v2 00/49] Series short description

2014-07-30 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini - patch 16 should also use subsections, and perhaps apply to all other CPUs too? We implemented replay only for i386 and ARM. If we'll change other targets, it will not add record/replay capabilities

Re: [Qemu-devel] [RFC PATCH v2 10/49] rtl8139: adding new fields to vmstate

2014-07-30 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 28/07/2014 11:54, Pavel Dovgaluk ha scritto: +VMSTATE_TIMER_V(timer, RTL8139State, 5), timer need not be migrated, because it is reinstated by rtl8139_post_load. That's true

[Qemu-devel] [PATCH] exec: save exception_index field

2014-07-30 Thread Pavel Dovgaluk
This patch adds subsection with exception_index field to the VMState for correct saving the CPU state. Without this patch simulator could miss the pending exception in the saved virtual machine state. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@ispras.ru --- exec.c | 35

Re: [Qemu-devel] [RFC PATCH v2 00/49] Series short description

2014-07-30 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 30/07/2014 09:44, Pavel Dovgaluk ha scritto: From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini - patch 16 should also use subsections, and perhaps apply to all other CPUs too? We implemented replay

[Qemu-devel] Reverse execution and deterministic replay

2014-06-26 Thread Pavel Dovgaluk
implementation of reverse execution can be found in paper: http://www.computer.org/csdl/proceedings/csmr/2012/4666/00/4666a553-abs.html Can anyone review our patches? Pavel Dovgaluk

Re: [Qemu-devel] Reverse execution and deterministic replay

2014-06-27 Thread Pavel Dovgaluk
-Original Message- From: peter.crosthwa...@petalogix.com [mailto:peter.crosthwa...@petalogix.com] On Behalf Of Peter Crosthwaite Sent: Friday, June 27, 2014 10:11 AM To: Pavel Dovgaluk; Fréderic Konrad Cc: qemu-devel@nongnu.org Developers; Paolo Bonzini Subject: Re: [Qemu-devel

Re: [Qemu-devel] Reverse execution and deterministic replay

2014-06-27 Thread Pavel Dovgaluk
-Original Message- From: Frederic Konrad [mailto:fred.kon...@greensocs.com] Sent: Friday, June 27, 2014 11:48 AM To: Pavel Dovgaluk Cc: Peter Crosthwaite; Paolo Bonzini; qemu-devel@nongnu.org Developers; Mark Burton Subject: Re: [Qemu-devel] Reverse execution and deterministic

Re: [Qemu-devel] Reverse execution and deterministic replay

2014-06-27 Thread Pavel Dovgaluk
On 27 June 2014 11:35, Pavel Dovgaluk pavel.dovga...@ispras.ru wrote: The major disadvantage of icount is that it's updated only on TB boundaries. When one instruction in the middle of the block uses virtual clock, it could have different values for different divisions of the code to TB

Re: [Qemu-devel] Reverse execution and deterministic replay

2014-06-27 Thread Pavel Dovgaluk
On 27 June 2014 11:35, Pavel Dovgaluk pavel.dovga...@ispras.ru wrote: The major disadvantage of icount is that it's updated only on TB boundaries. When one instruction in the middle of the block uses virtual clock, it could have different values for different divisions of the code to TB

Re: [Qemu-devel] memory access trace from qemu

2014-04-18 Thread Pavel Dovgaluk
other functions and files. Pavel Dovgaluk From: qemu-devel-bounces+pavel.dovgaluk=ispras...@nongnu.org [mailto:qemu-devel-bounces+pavel.dovgaluk=ispras...@nongnu.org] On Behalf Of Pete Stevenson Sent: Friday, April 18, 2014 3:31 AM To: qemu-devel@nongnu.org Subject: [Qemu-devel] memory access

[Qemu-devel] [RFC PATCH 00/22] Reverse execution and deterministic replay

2014-07-01 Thread Pavel Dovgaluk
Hi, This set of patches is related to the reverse execution and deterministic replay of qemu execution Our implementation of replay can be used for deterministic and reverse debugging of guest code through gdb remote interface. Execution recording writes non-deterministic events log, which

[Qemu-devel] [RFC PATCH 01/22] Makefiles

2014-07-01 Thread Pavel Dovgaluk
Changes in main makefiles. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/Makefile.target b/Makefile.target index 6089d29..357ab4d --- a/Makefile.target +++ b/Makefile.target @@ -76,6 +76,7 @@ all: $(PROGS) stap #

[Qemu-devel] [RFC PATCH 03/22] AIO replay

2014-07-01 Thread Pavel Dovgaluk
These patches introduce aio events recording and replaying. Since they are running in different threads, we need to record all invocations of BH to replay them deterministically. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/async.c b/async.c index 5b6fe6b..f86798a ---

[Qemu-devel] [RFC PATCH 04/22] Audo replay

2014-07-01 Thread Pavel Dovgaluk
These patches add deterministic replay for audio adapter. Support of audio record and replay is implemented only for Win32. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/audio/audio.c b/audio/audio.c index 9d018e9..475211c --- a/audio/audio.c +++ b/audio/audio.c @@

[Qemu-devel] [RFC PATCH 02/22]

2014-07-01 Thread Pavel Dovgaluk
These patches modify virtual hardware to make them deterministic. We also implemented saving/restoring for several devices or fixed vm state of them to save the fields that we needed for deterministically restoring behavior of the devices. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com

[Qemu-devel] [RFC PATCH 06/22] CPU module changes

2014-07-01 Thread Pavel Dovgaluk
These patches include modifications of common cpu files. All interrupts and exceptions occured during recording are written into the replay log. These events allow correct replaying the execution by kicking cpu thread when it finds one of these events in the log. Signed-off-by: Pavel Dovgalyuk

[Qemu-devel] [RFC PATCH 07/22] GDB stub for reverse execution

2014-07-01 Thread Pavel Dovgaluk
Adding support of reverse-stepi and reverse-contunue for gdb remote protocol. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/gdbstub.c b/gdbstub.c index 8afe0b7..ca71f38 --- a/gdbstub.c +++ b/gdbstub.c @@ -40,6 +40,7 @@ #include cpu.h #include qemu/sockets.h #include

[Qemu-devel] [RFC PATCH 08/22] Monitor commands

2014-07-01 Thread Pavel Dovgaluk
This patch adds commands to control replay from the monitor. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/hmp-commands.hx b/hmp-commands.hx index d0943b1..01d3203 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -1629,6 +1629,107 @@ passed since 1970, i.e. unix epoch.

[Qemu-devel] [RFC PATCH 09/22] IDE replay

2014-07-01 Thread Pavel Dovgaluk
These patches add replaces calls of bdrv functions by calls of their replay versions. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index f7d2009..0614102 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -25,6 +25,7 @@ #include

[Qemu-devel] [RFC PATCH 10/22] USB passthrough replay

2014-07-01 Thread Pavel Dovgaluk
USB passthrough replay. It writes all external data, returned by libusb, to the log. This data is read in replay mode instead of calling libusb functions. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/hw/usb/core.c b/hw/usb/core.c index cf34755..404154d 100644 ---

[Qemu-devel] [RFC PATCH 11/22] Thread pool synchronization for replay

2014-07-01 Thread Pavel Dovgaluk
Making thread pool deterministic. All thread work is done in synchronous mode by executing the worker and callback functions when checkpoint in code is passed or instruction is executed. These events are written to the log attached to this instruction or checkpoint. Signed-off-by: Pavel Dovgalyuk

[Qemu-devel] [RFC PATCH 14/22] Command-line options for record/replay

2014-07-01 Thread Pavel Dovgaluk
This patch introduces command-line options for record and replay. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/vl.c b/vl.c index 41ddcd2..adab76d --- a/vl.c +++ b/vl.c @@ -118,6 +118,7 @@ int main(int argc, char **argv) #include qapi/opts-visitor.h #include

[Qemu-devel] [RFC PATCH 13/22] Vmstate changes for replay

2014-07-01 Thread Pavel Dovgaluk
These patches introduce new field types for vmstate and disables system reset while loading the machine in replay mode. The machine should not be reset, because it breaks timers of the hardware devices by reading vmclock before completely restoring system's state. Signed-off-by: Pavel Dovgalyuk

[Qemu-devel] [RFC PATCH 12/22] cpu_ld/cpu_st bugfix

2014-07-01 Thread Pavel Dovgaluk
MMU helper functions are called from generated code and other helper functions. In both cases they try to get function's return address for using it while restoring virtual CPU state. When MMU helper is called from some other helper function (like helper_maskmov_xmm) through cpu_st* function,

[Qemu-devel] [RFC PATCH 15/22] Clock values record/replay

2014-07-01 Thread Pavel Dovgaluk
These patches contain modifications for recording and replaying host and virtual clock to the execution log. RDTSC output is also recorded. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/include/qemu/timer.h b/include/qemu/timer.h index 7f9a074..ef754a2 ---

[Qemu-devel] [RFC PATCH 16/22] Serial ports replay and stdio monitor for Win32

2014-07-01 Thread Pavel Dovgaluk
These files include the following changes: - Record/replay functions for COM ports added by -serial command-line option. - Implementation of stdio monitor for Win32. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/include/sysemu/char.h b/include/sysemu/char.h index

[Qemu-devel] [RFC PATCH 18/22] Network packets record/replay

2014-07-01 Thread Pavel Dovgaluk
These patches implement passing network packets to replay module in record mode. New virtual network adapter is impelemented to replay the packets when they are read from the log file. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/net/clients.h b/net/clients.h index

[Qemu-devel] [RFC PATCH 17/22] User input record/replay

2014-07-01 Thread Pavel Dovgaluk
Logging/replaying implementation of the mouse and keyboard input. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/include/ui/input.h b/include/ui/input.h index 5d5ac00..d06a12d 100644 --- a/include/ui/input.h +++ b/include/ui/input.h @@ -33,7 +33,9 @@ void

[Qemu-devel] [RFC PATCH 20/22] Stub functions

2014-07-01 Thread Pavel Dovgaluk
Stubs for new functions and objects. Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com --- diff --git a/stubs/Makefile.objs b/stubs/Makefile.objs index 528e161..b90c60a --- a/stubs/Makefile.objs +++ b/stubs/Makefile.objs @@ -26,6 +26,7 @@ stub-obj-y += notify-event.o stub-obj-y +=

[Qemu-devel] [RFC PATCH 21/22] Target ARM specific code

2014-07-01 Thread Pavel Dovgaluk
Platform-specific chanches to i386 simulation for deterministic replay and reverse debugging. We insert instruction-counting code before executing every instruction. In replay mode this code also breaks execution of TB, when any of the events are found in the replay log. Signed-off-by: Pavel

[Qemu-devel] [RFC PATCH 22/22] Target i386 specific code

2014-07-01 Thread Pavel Dovgaluk
Platform-specific chanches to i386 simulation for deterministic replay and reverse debugging. We insert instruction-counting code before executing every instruction. In replay mode this code also breaks execution of TB, when any of the events are found in the replay log. These patches also add

[Qemu-devel] [RFC PATCH 05/22] Block drivers changes

2014-07-01 Thread Pavel Dovgaluk
Modifications of block devices performed to support deterministic replay. First group of modifications create overlay files for every disk image used in recording mode. All checkpoints and disk modifications are written into these overlays and thus replay can start from the same disk state as

Re: [Qemu-devel] [RFC PATCH 18/22] Network packets record/replay

2014-07-02 Thread Pavel Dovgaluk
? There is no ability to control packets loggings. All incoming network traffic is written into the replay log, which name is specified in the command line. +{ 'type': 'NetdevReplayOptions', + 'data': { } } + Pavel Dovgaluk

Re: [Qemu-devel] [RFC PATCH 08/22] Monitor commands

2014-07-02 Thread Pavel Dovgaluk
-Original Message- From: Eric Blake [mailto:ebl...@redhat.com] Sent: Tuesday, July 01, 2014 9:33 PM To: Pavel Dovgaluk; 'QEMU Developers' Subject: Re: [Qemu-devel] [RFC PATCH 08/22] Monitor commands On 07/01/2014 05:23 AM, Pavel Dovgaluk wrote: This patch adds commands to control

Re: [Qemu-devel] [PATCH] exec: save exception_index field

2014-08-25 Thread Pavel Dovgaluk
From: Andreas Färber [mailto:afaer...@suse.de] Am 31.07.2014 07:41, schrieb Pavel Dovgaluk: This patch adds subsection with exception_index field to the VMState for correct saving the CPU state. Without this patch simulator could miss the pending exception in the saved virtual machine

Re: [Qemu-devel] [RFC PATCH v3 07/49] kvmapic: fixing loading vmstate

2014-08-25 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 31/07/2014 17:21, Pavel Dovgalyuk ha scritto: Pre load is necessary, because we switched off resetting VM while loading in the replay mode. Then you should not add it now, but rather when you add replay. Treat this part of the series

Re: [Qemu-devel] [RFC PATCH v3 15/49] softmmu: fixing usage of cpu_st/ld* from helpers

2014-08-26 Thread Pavel Dovgaluk
From: Alex Bennée [mailto:alex.ben...@linaro.org] Pavel Dovgalyuk writes: MMU helper functions are called from generated code and other helper functions. In both cases they try to get function's return address for using it while restoring virtual CPU state. When MMU helper is called

Re: [Qemu-devel] [PATCH 09/12] rtl8139: adding new fields to vmstate

2014-08-27 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 26/08/2014 09:15, Pavel Dovgalyuk ha scritto: This patch adds virtual clock-dependent timers to VMState to allow correct saving and restoring the state of RTL8139 network controller. Signed-off-by: Pavel

Re: [Qemu-devel] [PATCH 09/12] rtl8139: adding new fields to vmstate

2014-08-27 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 12:15, Pavel Dovgaluk ha scritto: Again, this is only needed in your record/replay system (and you haven't yet quite explained why the design has this limitation), so it should not be a part of this series. I see

Re: [Qemu-devel] [PATCH 09/12] rtl8139: adding new fields to vmstate

2014-08-27 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 12:30, Pavel Dovgaluk ha scritto: From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 12:15, Pavel Dovgaluk ha scritto: Again, this is only needed in your record/replay system (and you haven't yet quite explained

Re: [Qemu-devel] [PATCH 06/12] kvmvapic: fixing loading vmstate

2014-08-27 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 26/08/2014 09:15, Pavel Dovgalyuk ha scritto: vapic state should not be synchronized with APIC while loading, because APIC state could be not loaded yet at that moment. We just save vapic_paddr in APIC

Re: [Qemu-devel] [PATCH 06/12] kvmvapic: fixing loading vmstate

2014-08-27 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 14:16, Pavel Dovgaluk ha scritto: Can you use a vm_change_state_handler, or a QEMU_CLOCK_VIRTUAL timer with expiration time in the past (e.g. at time zero) to run the sync code as soon as possible? Then you can preserve

Re: [Qemu-devel] [PATCH 09/12] rtl8139: adding new fields to vmstate

2014-08-28 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 27/08/2014 12:48, Pavel Dovgaluk ha scritto: From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 12:30, Pavel Dovgaluk ha scritto: From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08

Re: [Qemu-devel] [PATCH v2 12/12] pl031: add missed field to vmstate

2014-09-02 Thread Pavel Dovgaluk
From: Peter Maydell [mailto:peter.mayd...@linaro.org] On 28 August 2014 12:19, Pavel Dovgalyuk pavel.dovga...@ispras.ru wrote: This patch adds timer which uses virtual clock to the VMState. Such timers are required for saving because virtual clock is the part of the virtual machine state.

Re: [Qemu-devel] [RFC PATCH v6 00/14] Reverse execution.

2014-09-09 Thread Pavel Dovgaluk
From: Frederic Konrad [mailto:fred.kon...@greensocs.com] On 08/09/2014 10:29, Paolo Bonzini wrote: Il 08/09/2014 10:09, Frederic Konrad ha scritto: By the way how do you want to have this discussion? At the KVM forum? Or by phone on KVM phone call? Or both. :) Seriously, Pavel is

Re: [Qemu-devel] [PATCH 06/12] kvmvapic: fixing loading vmstate

2014-09-09 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 27/08/2014 15:03, Pavel Dovgaluk ha scritto: Hmm, probably not. The bug would not be other timers accessing the APIC, because that would also call apic_sync_vapic and the only effect would be an extra useless synchronization. The bug

Re: [Qemu-devel] [PATCH v2 08/12] hpet: fixing saving and loading process

2014-09-09 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Il 28/08/2014 13:58, Paolo Bonzini ha scritto: This also breaks migration to 2.1, unless you use -no-hpet. Actually, this is also only needed for your record/replay implementation. Ok, I'll move it to the

Re: [Qemu-devel] [PATCH 02/10] apic_common: vapic_paddr synchronization fix

2014-09-10 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bonzini Sent: Tuesday, September 09, 2014 4:30 PM To: qemu-devel@nongnu.org Cc: quint...@redhat.com; amit.s...@redhat.com; dgilb...@redhat.com; pavel.dovga...@ispras.ru Subject: [PATCH 02/10] apic_common: vapic_paddr

Re: [Qemu-devel] [PATCH 07/10] serial: fixing vmstate for save/restore

2014-09-10 Thread Pavel Dovgaluk
From: Paolo Bonzini [mailto:pbonz...@redhat.com] Il 09/09/2014 15:59, Juan Quintela ha scritto: But poll_msl is more interesting, because we are not reseting it. So, we have that if we are migrating from an old version, we would have poll_msl == -1, and we used to have it to poll_msl ==

  1   2   3   >