ttrace: Protocal error

John David Anglin
2008-08-08T18:34:04Z

While were on the subject of threads, it seems we are still not in
a position to debug the vla6.f90 failure:

-bash-3.2$ gdb vla6.x3g
GNU gdb (GDB) 6.8.50.20080807-cvs
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "hppa2.0w-hp-hpux11.11".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
(gdb) r
Starting program: /mnt/gnu/gcc/objdir/hppa2.0w-hp-hpux11.11/libgomp/testsuite/vla6.x3g
warning: Private mapping of shared library text was not specified
by the executable; setting a breakpoint in a shared library which
is not privately mapped will not work. See the HP-UX 11i v3 chatr
manpage for methods to privately map shared library text.
[New process 20069]
[New process 20069, lwp 7087826]
[process 20069, lwp 7087826 exited]
0xc0065508 in ?? ()
ttrace: Protocol error.

This doesn't happen with 6.4.50.20051230-cvs. Unfortunately, this
version forces shared libraries private.

This is the gdb backtrace:

Breakpoint 1, perror_with_name (string=0x0) at ../../src/gdb/utils.c:847
847 err = safe_strerror (errno);
(gdb) bt
#0 perror_with_name (string=0x0) at ../../src/gdb/utils.c:847
#1 0x000c9b08 in inf_ttrace_resume_callback (info=0x2319b0, arg=0x7b019048)
at ../../src/gdb/inf-ttrace.c:813
#2 0x0008b640 in iterate_over_threads (
callback=@0x4001a70a: 0xc9a28 <inf_ttrace_resume_callback>, data=0x0)
at ../../src/gdb/thread.c:338
#3 0x000c9960 in inf_ttrace_resume (ptid=
{pid = 1953788513, lwp = 1667563520, tid = 774778670}, step=1073949720,
signal=TARGET_SIGNAL_0) at ../../src/gdb/inf-ttrace.c:847
#4 0x000a3390 in target_resume (ptid=
{pid = 1953788513, lwp = 1667563520, tid = 774778670}, step=0,
signal=TARGET_SIGNAL_0) at ../../src/gdb/target.c:1789
#5 0x00087f88 in resume (step=0, sig=TARGET_SIGNAL_0)
at ../../src/gdb/infrun.c:1123
#6 0x00088c00 in handle_inferior_event (ecs=0x7eff10d8)
at ../../src/gdb/infrun.c:2115
#7 0x0008ab94 in wait_for_inferior (treat_exec_as_sigtrap=0)
at ../../src/gdb/infrun.c:1538
#8 0x0008ae74 in proceed (addr=0, siggnal=TARGET_SIGNAL_0, step=0)
at ../../src/gdb/infrun.c:1350
#9 0x0003a950 in run_command_1 (args=0x7eff0e23 "", from_tty=1,
tbreak_at_main=1074219312) at ../../src/gdb/infcmd.c:573
...

Any thoughts on how to fix? Since this is a TT_LWP_CONTINUE, I presume
the code is attempting to resume a thread not stopped by the debugger.

Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)