> Assuming that breakpoint locations are indeed meant to be virtual > addresses, GDB would have to evaluate the CS descriptor, add the CS > base to the EIP address and THEN check whether it knows the address. > But as it seems to be segment-agnostic it doesn't do that and things > break as a result.
As Dan said, gdb knows nothing about x86 segmentation. As soon as you have nonzero segment bases you're pretty much on your own. If you care about fixing this I suggest you get GDB folks to agree (and document) how segmented memory models should work, then implement that model in qemu. Hacking qemu to work for your particular case with unmodified gdb probably "breaks" something else, so doesn't seem to improve the overall usefulness. I believe all common x86 OS use zero segment bases, and in long mode the CS/DS segment bases are ignored. Paul _______________________________________________ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel