From: Daniel Jacobowitz <drow@false.org>
To: Vladimir Prus <ghost@cs.msu.su>
Cc: Greg Law <glaw@undo-software.com>, gdb-patches@sources.redhat.com
Subject: Re: SIGSEGV on gdb 6.7*
Date: Thu, 28 Feb 2008 14:17:00 -0000 [thread overview]
Message-ID: <20080228141700.GB8988@caradoc.them.org> (raw)
In-Reply-To: <E1JUczR-0000Y4-Px@zigzag.lvk.cs.msu.su>
On Thu, Feb 28, 2008 at 10:15:35AM +0300, Vladimir Prus wrote:
> This patch cause testsuite regressions for me, as follows:
>
> FAIL: gdb.base/annota1.exp: continue to printf
> FAIL: gdb.base/annota1.exp: send SIGUSR1
> FAIL: gdb.base/annota1.exp: signal sent
> FAIL: gdb.cp/annota2.exp: continue to exit
> FAIL: gdb.cp/annota2.exp: watch triggered on a.x
>
> This is Kubuntu 7.10 Gutsy, and gcc version is:
>
> gcc version 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)
>
> JFYI -- I'm not sure we should bother about annotations.
My fault. These are easy to fix, as attached. I'll check this in shortly.
--
Daniel Jacobowitz
CodeSourcery
2008-02-28 Daniel Jacobowitz <dan@codesourcery.com>
* frame.c (reinit_frame_cache): Only annotate if frames were
previously valid.
2008-02-28 Daniel Jacobowitz <dan@codesourcery.com>
* gdb.base/annota1.exp, gdb.cp/annota2.exp: Update for fewer
frames-invalid annotations.
Index: frame.c
===================================================================
RCS file: /cvs/src/src/gdb/frame.c,v
retrieving revision 1.236
diff -u -p -r1.236 frame.c
--- frame.c 1 Jan 2008 22:53:09 -0000 1.236
+++ frame.c 28 Feb 2008 14:15:46 -0000
@@ -1079,9 +1079,11 @@ reinit_frame_cache (void)
obstack_free (&frame_cache_obstack, 0);
obstack_init (&frame_cache_obstack);
+ if (current_frame != NULL)
+ annotate_frames_invalid ();
+
current_frame = NULL; /* Invalidate cache */
select_frame (NULL);
- annotate_frames_invalid ();
if (frame_debug)
fprintf_unfiltered (gdb_stdlog, "{ reinit_frame_cache () }\n");
}
Index: testsuite/gdb.base/annota1.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/annota1.exp,v
retrieving revision 1.27
diff -u -p -r1.27 annota1.exp
--- testsuite/gdb.base/annota1.exp 26 Feb 2008 08:14:11 -0000 1.27
+++ testsuite/gdb.base/annota1.exp 28 Feb 2008 14:15:46 -0000
@@ -149,7 +149,7 @@ gdb_expect {
set binexp [string_to_regexp $binfile]
send_gdb "run\n"
gdb_expect {
- -re "\r\n\032\032post-prompt\r\nStarting program: $binexp \(\r\n\r\n\032\032frames-invalid\)+\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n\032\032starting\(\r\n\r\n\032\032frames-invalid\)+\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n\032\032breakpoint 1\r\n\r\nBreakpoint 1, \r\n\032\032frame-begin 0 $hex\r\n\r\n\032\032frame-function-name\r\nmain\r\n\032\032frame-args\r\n \\(\\)\r\n\032\032frame-source-begin\r\n at \r\n\032\032frame-source-file\r\n.*annota1.c\r\n\032\032frame-source-file-end\r\n:\r\n\032\032frame-source-line\r\n$main_line\r\n\032\032frame-source-end\r\n\r\n\r\n\032\032source.*$srcfile:$main_line:.*:beg:$hex\r\n\r\n\032\032frame-end\r\n\r\n\032\032stopped.*$gdb_prompt$" {
+ -re "\r\n\032\032post-prompt\r\nStarting program: $binexp \(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)+\r\n\r\n\032\032starting\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n\032\032breakpoint 1\r\n\r\nBreakpoint 1, \r\n\032\032frame-begin 0 $hex\r\n\r\n\032\032frame-function-name\r\nmain\r\n\032\032frame-args\r\n \\(\\)\r\n\032\032frame-source-begin\r\n at \r\n\032\032frame-source-file\r\n.*annota1.c\r\n\032\032frame-source-file-end\r\n:\r\n\032\032frame-source-line\r\n$main_line\r\n\032\032frame-source-end\r\n\r\n\r\n\032\032source.*$srcfile:$main_line:.*:beg:$hex\r\n\r\n\032\032frame-end\r\n\r\n\032\032stopped.*$gdb_prompt$" {
pass "run until main breakpoint"
}
-re ".*$gdb_prompt$" {
@@ -466,7 +466,7 @@ if [target_info exists gdb,nosignals] {
setup_xfail hppa*-*-hpux11*
send_gdb "signal SIGTRAP\n"
gdb_expect {
- -re ".*\032\032post-prompt\r\nContinuing with signal SIGTRAP.\r\n\r\n\032\032starting\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032signalled\r\n\r\nProgram terminated with signal \r\n\032\032signal-name\r\nSIGTRAP\r\n\032\032signal-name-end\r\n, \r\n\032\032signal-string\r\nTrace.breakpoint trap\r\n\032\032signal-string-end\r\n.\r\nThe program no longer exists.\r\n\r\n\032\032stopped\r\n$gdb_prompt$" \
+ -re ".*\032\032post-prompt\r\nContinuing with signal SIGTRAP.\r\n\r\n\032\032starting\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032signalled\r\n\r\nProgram terminated with signal \r\n\032\032signal-name\r\nSIGTRAP\r\n\032\032signal-name-end\r\n, \r\n\032\032signal-string\r\nTrace.breakpoint trap\r\n\032\032signal-string-end\r\n.\r\nThe program no longer exists.\r\n\r\n\032\032stopped\r\n$gdb_prompt$" \
{ pass "signal sent" }
-re ".*$gdb_prompt$" { fail "signal sent" }
timeout { fail "signal sent (timeout)" }
Index: testsuite/gdb.cp/annota2.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.cp/annota2.exp,v
retrieving revision 1.9
diff -u -p -r1.9 annota2.exp
--- testsuite/gdb.cp/annota2.exp 1 Jan 2008 22:53:19 -0000 1.9
+++ testsuite/gdb.cp/annota2.exp 28 Feb 2008 14:15:46 -0000
@@ -122,7 +122,7 @@ gdb_expect {
#
send_gdb "continue\n"
gdb_expect {
- -re "\r\n\032\032post-prompt\r\nContinuing.\r\n\r\n\032\032starting\r\n\r\n\032\032frames-invalid\r\na.x is 1\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032exited 0\r\n\r\nProgram exited normally.\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032stopped\r\n$gdb_prompt$" \
+ -re "\r\n\032\032post-prompt\r\nContinuing.\r\n\r\n\032\032starting\r\n\r\n\032\032frames-invalid\r\na.x is 1\r\n\r\n\032\032exited 0\r\n\r\nProgram exited normally.\r\n\r\n\032\032stopped\r\n$gdb_prompt$" \
{ pass "continue until exit" }
-re ".*$gdb_prompt$" { fail "continue to exit" }
timeout { fail "continue to exit (timeout)" }
next prev parent reply other threads:[~2008-02-28 14:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-04 20:50 Greg Law
2008-02-04 21:04 ` Daniel Jacobowitz
2008-02-04 21:39 ` Greg Law
[not found] ` <47A7850B.10202@undo-software.com>
2008-02-04 21:45 ` Daniel Jacobowitz
2008-02-04 21:59 ` Greg Law
2008-02-04 22:11 ` Daniel Jacobowitz
2008-02-04 22:36 ` Greg Law
2008-02-11 20:59 ` Greg Law
2008-02-26 23:00 ` Michael Snyder
2008-02-27 0:37 ` Daniel Jacobowitz
2008-02-27 0:43 ` Michael Snyder
2008-02-27 0:51 ` Daniel Jacobowitz
2008-02-27 0:54 ` Michael Snyder
2008-02-27 1:05 ` Daniel Jacobowitz
2008-02-27 1:08 ` Michael Snyder
2008-02-27 20:23 ` Greg Law
2008-02-28 7:46 ` Vladimir Prus
2008-02-28 14:17 ` Daniel Jacobowitz [this message]
2008-02-28 14:17 ` Thiago Jung Bauermann
2008-02-28 16:18 ` Daniel Jacobowitz
2008-03-04 20:09 ` Joel Brobecker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080228141700.GB8988@caradoc.them.org \
--to=drow@false.org \
--cc=gdb-patches@sources.redhat.com \
--cc=ghost@cs.msu.su \
--cc=glaw@undo-software.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox