This is the mail archive of the
mailing list for the GDB project.
Re: internal error when setting watchpoints in programs with fork() on ppc
- From: Pedro Alves <pedro at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Cc: Edjunior Barbosa Machado <emachado at linux dot vnet dot ibm dot com>, jan dot kratochvil at redhat dot com
- Date: Fri, 4 Nov 2011 22:52:12 +0000
- Subject: Re: internal error when setting watchpoints in programs with fork() on ppc
- References: <4EB46474.firstname.lastname@example.org>
On Friday 04 November 2011 22:17:24, Edjunior Barbosa Machado wrote:
> testing upstream gdb, I'm facing this internal error when running gdb.threads/watchpoint-fork.exp testcase (from this non-upstreamed patch http://sourceware.org/ml/gdb-patches/2010-12/msg00043.html, found in gdb from Fedora and enterprise distros) on ppc64, more specifically in the `set follow-fork-mode child' part of the test:
> ../../gdb.git/gdb/frame.c:2375: internal-error: frame_cleanup_after_sniffer: Assertion `frame->prologue_cache == NULL' failed.
> Actually, noticed that before this error, gdb fails to read r31 due to a wrong pid when issuing ptrace call on fetch_register() from ppc-linux-nat.c. This gdb-follow-child-stale-parent.patch from Jan Kratochvil (http://web.archiveorange.com/archive/v/iRKxrvg3CBOJl9wyV0pi, attached bellow) fixes this issue. Does this look ok for FSF gdb as well?
I really couldn't tell what was the real problem from this description.