I am having a problem using a statically compiled QEMU arm version. I am trying to debug an application from an embedded device. Everything seems to work fine except breakpoints on other threads. I am using IDAs remote gdb function to debug. Instead of breaking here
it gives me a SIGTRAP and goes to here
Using hardware breakpoints also doesn't do the trick.
Edit: The problem doesn't seem to be IDA itself. I was using qemu-arm-static version 2.0.0. IDA seems to have the bug I mentioned above. Using commandline gdb-multiarch to try and debug it I get the following error after hitting the breakpoint:
Program received signal SIGTRAP, Trace/breakpoint trap.
0xf67c523c in ?? ()
(gdb) info registers
/build/buildd/gdb-7.7.1/gdb/findvar.c:292: internal-error: value_of_register_lazy: Assertion `frame_id_p (get_frame_id (frame))' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) y
/build/buildd/gdb-7.7.1/gdb/findvar.c:292: internal-error: value_of_register_lazy: Assertion `frame_id_p (get_frame_id (frame))' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
This happens with the 2.0.0 qemu version as well as the 2.8.0 version I got from here