gdb can't proceed after a breakpoint
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Expired
|
Undecided
|
Unassigned |
Bug Description
Using qemu-1.
Host: Windows 7 Ultimate 64-bit
Guest: i386 system running MS-DOS 6.22
Launch command line:
qemu-
Debbugers tried:
gdb 7.3.50.20111026-cvs running on Cygwin 1.7.16
gdb 7.4 on MinGW
Short description:
I use gdb to attach to a running Qemu session, set a breakpoint and resume execution. When the breakpoint is hit, gdb gains control as expected. However, trying to single-step or continue at this point just causes the same breakpoint to be hit immediately again. Deleting the breakpoint allows single-stepping or continue to work.
Steps to reproduce:
DOS.vfd is a floppy image containing an MS-DOS 6.22 startup disk.
Data.vfd is a floppy image containing a single program (hello.com).
The aim is to debug the execution of hello.com with gdb.
Launch Qemu.
Launch gdb, an attach to qemu:
"target remote localhost:1234"
I know the address at which hello.com will be loaded, so set a breakpoint there and resume execution:
"break *0xf730"
"continue"
In Qemu, start hello.com. The breakpoint is immediately hit, execution stops and gdb gains control.
Examining the program gives expected results (such as "info reg" or "disassemble").
At this point, try to proceed either with single-stepping ("si" or "ni") or with "continue", and the same breakpoint is immediately hit again. Subsequent attempts to single-step or continue just keep hitting the same breakpoint.
The only way to proceed at this point is to delete the breakpoint, after which both single-stepping and continue work.
Note that single-stepping and continue works as expected if it is done after interrupting execution with Ctrl-C.
Triaging old bug tickets ... can you still reproduce this issue with the
latest version of QEMU (version 2.9)?