qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 00/19] reverse debugging


From: Alex Bennée
Subject: Re: [Qemu-devel] [PATCH v4 00/19] reverse debugging
Date: Tue, 05 Jun 2018 09:01:37 +0100
User-agent: mu4e 1.1.0; emacs 26.1.50

Pavel Dovgalyuk <address@hidden> writes:

>> From: Alex Bennée [mailto:address@hidden
>> Pavel Dovgalyuk <address@hidden> writes:
>>
>> > Ping?
>>
>> I started having a look but I ran into this straight away. First I
>> recorded a boot of the kernel:
>>
>>   ./aarch64-softmmu/qemu-system-aarch64 -machine virt,graphics=on,gic-
>> version=3,virtualization=on -cpu cortex-a53 --serial mon:stdio -display none 
>> -kernel
>> ../images/aarch64-current-linux-initrd-guest.img -icount 
>> shift=7,rr=record,rrfile=replay.bin
>>
>> Then played back:
>>
>>   ./aarch64-softmmu/qemu-system-aarch64 -machine virt,graphics=on,gic-
>> version=3,virtualization=on -cpu cortex-a53 --serial mon:stdio -display none 
>> -kernel
>> ../images/aarch64-current-linux-initrd-guest.img -icount 
>> shift=7,rr=replay,rrfile=replay.bin -
>> s -S
>
> This looks ok, but...
>
>> And did the following on gdb:
>>
>> (gdb) i
>> 0x0000000040000004 in ?? ()
>> => 0x40000004:  mov     x1, xzr
>>    0x40000008:  mov     x2, xzr
>>    0x4000000c:  mov     x3, xzr
>> (gdb)
>> 0x0000000040000008 in ?? ()
>> => 0x40000008:  mov     x2, xzr
>>    0x4000000c:  mov     x3, xzr
>>    0x40000010:  ldr     x4, 0x40000020
>> (gdb)
>> 0x000000004000000c in ?? ()
>> => 0x4000000c:  mov     x3, xzr
>>    0x40000010:  ldr     x4, 0x40000020
>>    0x40000014:  br      x4
>> (gdb)
>> 0x0000000040000010 in ?? ()
>> => 0x40000010:  ldr     x4, 0x40000020
>>    0x40000014:  br      x4
>>    0x40000018:  .inst   0x44000000 ; undefined
>> (gdb)
>> 0x0000000040000014 in ?? ()
>> => 0x40000014:  br      x4
>>    0x40000018:  .inst   0x44000000 ; undefined
>>    0x4000001c:  .inst   0x00000000 ; undefined
>> (gdb) p/x $x4
>> $1 = 0x40080000
>> (gdb) reverse-stepi
>> warning: Remote failure reply: E14
>>
>> Surely this is the simple case and doesn't require any snapshots for
>> block devices as there are none. Am I missing something?
>
> Reverse debugging requires the snapshotting. QEMU can't revert the VM state 
> without the snapshots.
> You can try adding an empty qcow2 image to allow snapshotting there.

I got confused with block device snapshots and rr snapshots. Let me try
again ;-)


--
Alex Bennée



reply via email to

[Prev in Thread] Current Thread [Next in Thread]