[RFA] Stop infrun from tracking breakpoint insertion status.

Ulrich Weigand uweigand@de.ibm.com
Mon Nov 26 15:25:00 GMT 2007


Vladimir Prus wrote:

> On Thursday 22 November 2007 03:49:22 you wrote:
> > Hmmm, if it helps, I could run a test on AIX, which does use
> > TARGET_WAITKIND_LOADED.
> 
> That would surely help in convincing ourself the patch don't
> break anything.

I did a test run on AIX now, and unfortunately it did break.

I didn't look into the failure in detail, but apparently it
is unrelated to TARGET_WAITKIND_LOADED, but rather to software
single-step support:

rios2 10$ ./gdb testsuite/gdb.base/all-types
GNU gdb 6.7.50.20071126-cvs
Copyright (C) 2007 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 "powerpc-ibm-aix5.3.0.0"...
Setting up the environment for debugging gdb.
Function "internal_error" not defined.
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]
Function "info_command" not defined.
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]
/c1dje/c1dje/gdb-head-build/gdb/.gdbinit:8: Error in sourced command file:
No breakpoint number 0.
(gdb) start
Breakpoint 1 at 0x1000037c: file /c1dje/c1dje/gdb-head/gdb/testsuite/gdb.base/all-types.c, line 35.
Starting program: /c1dje/c1dje/gdb-head-build/gdb/testsuite/gdb.base/all-types
main () at /c1dje/c1dje/gdb-head/gdb/testsuite/gdb.base/all-types.c:35
35          dummy();
(gdb) n

Program exited normally.
(gdb) start
Breakpoint 2 at 0x1000037c: file /c1dje/c1dje/gdb-head/gdb/testsuite/gdb.base/all-types.c, line 35.
Starting program: /c1dje/c1dje/gdb-head-build/gdb/testsuite/gdb.base/all-types
main () at /c1dje/c1dje/gdb-head/gdb/testsuite/gdb.base/all-types.c:35
35          dummy();
(gdb) n
/c1dje/c1dje/gdb-head/gdb/breakpoint.c:8140: internal-error: insert_single_step_breakpoint: Assertion `single_step_breakpoints[1] == NULL' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.


Note how not only single-step does not work, but it appears to leave
its data structures in an inconsisten state to that a subsequent attempt
to use single-step breakpoints triggers an internal error ...

Can you have a look?

Bye,
Ulrich


-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  Ulrich.Weigand@de.ibm.com



More information about the Gdb-patches mailing list