Hello QEMU folks.
I was struggling to fix a recent heisenbug in the Linux kernel,
and fortunately the bug was reproducible with TCG and -smp 1.

I'm using qemu version 7.2.0, and guest architecture is i386.
I tried to inspect the bug using record/replay and reverse-debugging
feature in the QEMU.


recorded with:

qemu-system-i386 \
        -icount shift=auto,rr=record,rrfile=$REPLAY_FILE \
        -kernel arch/x86/boot/bzImage \
        -cpu SandyBridge \
        -initrd debian-i386.cgz \
        -smp 1 \
        -m 1024 \
        -nographic \
        -net none \
        -append "page_owner=on console=ttyS0"

and replayed with:

qemu-system-i386 \
        -icount shift=auto,rr=replay,rrfile=$REPLAY_FILE \
        -kernel arch/x86/boot/bzImage \
        -cpu SandyBridge \
        -initrd debian-i386.cgz \
        -smp 1 \
        -m 1024 \
        -nographic \
        -net none \
        -s \
        -append "page_owner=on console=ttyS0"

(I'm using a initrd image instead of a disk file.)

The record and replay works well. The bug is reliably reproduced
when relaying. but when I try to reverse-continue or reverse-stepi after
kernel panic, the gdb only says:

        "remote failure reply 'E14'"

Is there something I'm missing, or record/replay do not work with
QEMU v7.2.0 or i386?

--
Best regards,
Hyeonggon

Reply via email to