Re: tracing, attaching to gdb processes

Ed Peschko
2006-03-06T20:10:59Z

On Mon, Mar 06, 2006 at 12:01:00PM -0000, Dave Korn wrote:
> On 06 March 2006 11:55, Bob Rossi wrote:
>
> > On Sun, Mar 05, 2006 at 09:28:32PM -0800, Ed Peschko wrote:
> >> all,
> >>
> >> I had a couple of suggestions for gdb, and was wondering if they had either
> >> been implemented, or were on the 'wish list' to be implemented.
> >>
> >>
> >> 2) attach mode. I've noticed, especially with testing services through
> >> xinetd, that you can't always expect to have a gdb session come up
> >> visibly.
> >>
> >> For example, I was testing cvs the other day through valgrind, and
> >> it has a --db-command option for firing up a debugger if a memory
> >> leak occurs. If you are in a shell, this is no big deal. But if the
> >> service runs through something like valgrind, the gdb debugger gets
> >> fired up in a non-interactive place. I'd like to have the ability
> >> to attach to the gdb command from a window and be able to interact
> >> with the gdb session from there.
> >
> > For this problem, couldn't you simply have valgrind either start GDB in
> > screen so that you could attach to it when you want, or use a graphical
> > debugger (xterm -e gdb)?
> >
> > Bob Rossi
>
> Or have valgrind attach a gdbserver instance to the faulting process, and
> then connect locally to _that_ with gdb?
>
> cheers,
> DaveK
> --

well, the X11 solution was the one I thought of first, but I don't always have a X11
connection (I do most of my stuff over screen), and two, since valgrind is run under
inetd, its not in an interactive terminal, so I would be very interested to know
if I *could* redirect the gdb session to a screen, and if so, how.

WRT gdbserver, I'm not sure - I need to start the gdb with the format

gdb -nw %f %p,

ie: be able to write to the executable or core file, and to be able to attach to the
process. I guess I also need to stop the gdbserver each time I do this, the gdb through
valgrind is a blocking call..

Anyways, thanks for the suggestions. I'm assuming that the 'trace' mode, on the other
hand does not exist?

Ed