This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA/testsuite] Fix linux-dp failure for multiple targets



I approve this change.

Michael Snyder <msnyder@redhat.com> writes:

> Fernando Nasser wrote:
> > 
> > Daniel Jacobowitz wrote:
> > >
> > > On Wed, Jan 09, 2002 at 06:39:26PM -0500, Daniel Jacobowitz wrote:
> > > > Two things I noticed in my testsuite runs.  We were never finding the
> > > > manager thread, and in gcc3 (which apparently unlike GCC2 produces reliable
> > > > and stable addresses for the data pointers; I don't know why...) the second
> > > > target board to run would find the old value of the seen array.  'array set'
> > > > doesn't do what the author of the testcase expected.
> > > >
> > > > Is this OK?
> > >
> > > I'd appreciate it if someone would review this.
> > >
> > 
> > Michael Snyder has the final word on this one.
> 
> Actually Jim Blandy is the author of this test.
> 
> > 
> > I don't have any objections.
> > 
> > Fernando
> > 
> > > > 2002-01-09  Daniel Jacobowitz  <drow@mvista.com>
> > > >
> > > >       * gdb.threads/linux-dp.exp: Use 'array unset', not 'array set'.
> > > >       (check_philosopher_stack): Check for manager thread before checking
> > > >       for a just-starting thread.
> > > >
> > > > Index: linux-dp.exp
> > > > ===================================================================
> > > > RCS file: /cvs/src/src/gdb/testsuite/gdb.threads/linux-dp.exp,v
> > > > retrieving revision 1.4
> > > > diff -u -p -r1.4 linux-dp.exp
> > > > --- linux-dp.exp      2001/05/25 01:29:01     1.4
> > > > +++ linux-dp.exp      2002/01/09 23:35:01
> > > > @@ -172,6 +172,15 @@ proc check_philosopher_stack {thread see
> > > >           }
> > > >           set interesting 1
> > > >       }
> > > > +     -re ".* in __pthread_manager \\(.*$gdb_prompt $" {
> > > > +         if {$manager_seen == 1} {
> > > > +             fail "manager thread is distinct: $thread"
> > > > +         } else {
> > > > +             set manager_seen 1
> > > > +             pass "manager thread is distinct: $thread"
> > > > +         }
> > > > +         set interesting 1
> > > > +     }
> > > >       -re "pthread_start_thread.*\r\n$gdb_prompt $" {
> > > >           ## Maybe the thread hasn't started yet.
> > > >           pass $name
> > > > @@ -185,15 +194,6 @@ proc check_philosopher_stack {thread see
> > > >           }
> > > >           set interesting 1
> > > >       }
> > > > -     -re ".* in __pthread_manager \\(.*$gdb_prompt $" {
> > > > -         if {$manager_seen == 1} {
> > > > -             fail "manager thread is distinct: $thread"
> > > > -         } else {
> > > > -             set manager_seen 1
> > > > -             pass "manager thread is distinct: $thread"
> > > > -         }
> > > > -         set interesting 1
> > > > -     }
> > > >       -re " in \\?\\?.*\r\n$gdb_prompt $" {
> > > >           ## Sometimes we can't get a backtrace.  I'm going to call
> > > >           ## this a pass, since we do verify that at least one
> > > > @@ -214,7 +214,7 @@ proc check_philosopher_stack {thread see
> > > >  }
> > > >
> > > >  set any_interesting 0
> > > > -array set seen {}
> > > > +array unset seen
> > > >  for {set i 1} {$i <= 7} {incr i} {
> > > >      if [check_philosopher_stack $i seen] {
> > > >       set any_interesting 1
> > > >
> > >
> > > --
> > > Daniel Jacobowitz                           Carnegie Mellon University
> > > MontaVista Software                         Debian GNU/Linux Developer
> > 
> > --
> > Fernando Nasser
> > Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
> > 2323 Yonge Street, Suite #300
> > Toronto, Ontario   M4P 2C9


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]