Re: Can't enable reverse debugging

Bryan Evenson


-----Original Message-----
From: Khem Raj [mailto:raj.khem@...]
Sent: Monday, December 12, 2016 12:48 PM
To: Bryan Evenson <bevenson@...>
Cc: yocto@...
Subject: Re: [yocto] Can't enable reverse debugging

On Dec 12, 2016, at 6:59 AM, Bryan Evenson <bevenson@...>


-----Original Message-----
From: Khem Raj [mailto:raj.khem@...]
Sent: Saturday, December 10, 2016 4:26 PM
To: Bryan Evenson <bevenson@...>
Cc: yocto@...
Subject: Re: [yocto] Can't enable reverse debugging

On Fri, Dec 9, 2016 at 8:43 AM, Bryan Evenson
I tried a few other things, see below.

-----Original Message-----
From: yocto-bounces@... [mailto:yocto-
bounces@...] On Behalf Of Bryan Evenson
Sent: Thursday, December 08, 2016 2:50 PM
To: yocto@...
Subject: [yocto] Can't enable reverse debugging

I'm on poky/dizzy and I'm getting a segementation fault in my
application that I think may be related to a buffer overflow. I'm
using the Eclipse
(on Eclipse Kepler) to debug on the hardware with GDB. I'm trying
reverse debugging but I have not had any success and I'm looking

My target processor is an SAM9G25 (ARM926EJ-S core). I have been
debug through Eclipse on the target hardware without issue. I
Reverse Debugging by going to Window->Customize Perspective...-
Command Groups Availability and selecting "Reverse Debugging".
there is a "Reverse Toggle" button on my toolbar, but it is always
whether I have a debug session running or not. I have also tried
command "record" from the GDB console after my program breaks at
When I run the program, I get the error message "Process record:
record execution log".
I tried first running my application, pausing the debugger and then
the "record" command. When I continued debugging, I got the
following GDB error:

7.7.1/gdb/utils.c:1073: internal-error: virtual memory exhausted.
A problem internal to GDB has been detected, further debugging may
prove unreliable.

I did some looking around and I couldn't see any reasonable answer
to why
this would happen. I also just noticed that for the Debug
Configurations under Eclipse, the debugger settings tab doesn't have
"Enable Reverse Debugging at startup" option listed for the C/C++
Remote Application debugging type. Is this option just not available to me
with my environment?

This could mean many things but one area I know is troublesome is
python support. Sometimes there are issues between fundamental
can you check if the error happens when gdb is running some pythonic
Could you explain how to do this? I don't use Python so I'm not sure if I'm
doing a valid test. I tried to debug a Python script with GDB through Eclipse
and I wasn't successful. I then went through the command line and was able
to remotely run a simple Python script (print "Hello, Python" once per
second) through GDB. If I issued a "record" command through GDB first,
then when I tried to debug the Python script I'd immediately get a
segmentation fault.

Is there something specific you'd like me to try? If you think the Python
support may be the issue, is there something I should be verifying is present
or is at a certain version?
Disable python support in gdb and compile it e.g.
I rebuilt gdb. I used the --configure option to verify that my previous gdb did have the "--with-python" option present and that my newly built gdb did not have that option anymore. I no longer can produce the " internal-error: virtual memory exhausted" error, but whenever I try to record I still get the "Process record: failed to record execution log" when I run the application. If it helps, here's the configuration output from GDB:

This GDB was configured as follows:
configure --host=x86_64-linux --target=arm-poky-linux-gnueabi
--with-gdb-datadir=~/poky/poky-build/tmp/sysroots/x86_64-linux/usr/share/gdb-arm926ejste-poky-linux-gnueabi/gdb (relocatable)
--with-jit-reader-dir=~/poky/poky-build/tmp/sysroots/x86_64-linux/usr/lib/arm-poky-linux-gnueabi/gdb (relocatable)
--with-separate-debug-dir=~/poky/poky-build/tmp/sysroots/x86_64-linux/usr/lib/arm-poky-linux-gnueabi/debug (relocatable)

Any additional suggestions would be appreciated.



Join { to automatically receive all group messages.