qemu single step will fail if current EIP hit a breakpoint
I use the following code to insert a breakpoint in physical address 0x1600000
CPUArchState *cpu = first_cpu; hwaddr addr; sscanf(command + 2, "%ld", &addr); int err = cpu_breakpoint_insert(cpu, addr, BP_GDB, NULL );</pre>
qemu successfully hit the breakpoint and stop, then i try to single-step by the following code:
CPUArchState *cpu = first_cpu; cpu_single_step(cpu, sstep_flags); vm_start();
Nothing happened, the EIP still stay in 0x1600000, but if i delete the breakpoint, the single step just work again. Am I missed something?