This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: RFA (threads testsuite): More thread tests
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: Fernando Nasser <fnasser at redhat dot com>
- Cc: gdb-patches at sources dot redhat dot com, Michael Snyder <msnyder at cygnus dot com>
- Date: Wed, 14 Aug 2002 12:06:25 -0400
- Subject: Re: RFA (threads testsuite): More thread tests
- References: <20020709154033.GA7204@nevyn.them.org> <3D598B15.524EC321@redhat.com>
On Tue, Aug 13, 2002 at 06:41:25PM -0400, Fernando Nasser wrote:
> Daniel Jacobowitz wrote:
> >
> > Here's two tests I had lying around from when I developed the gdbserver
> > threads support. Gdbserver passes them with flying colors (if you use my
> > other patch which lets gdbserver run tests properly). GDB shows a couple of
> > problems, unpredictably (not always repeatable).
> >
>
> Can you elaborate on what these problems are and on which host you've
> seen them?
They vary greatly, unfortunately. They're all reproducible but not
necessarily repeatable; run the tests a half-dozen times and you'll
probably see them. My system is SMP which makes things even more
timing-dependant.
>From one run just now:
FAIL: gdb.threads/print-threads.exp: Running threads (slow with kill breakpoint) (unknown output)
FAIL: gdb.threads/schedlock.exp: continue with lock does not change thread (switched to thread 4)
FAIL: gdb.threads/schedlock.exp: other thread 0 didn't run (ran)
FAIL: gdb.threads/schedlock.exp: other thread 2 didn't run (ran)
FAIL: gdb.threads/schedlock.exp: other thread 3 didn't run (ran)
FAIL: gdb.threads/schedlock.exp: other thread 4 didn't run (ran)
FAIL: gdb.threads/schedlock.exp: other thread 5 didn't run (ran)
FAIL: gdb.threads/schedlock.exp: step with lock does not change thread (switched to thread 4)
FAIL: gdb.threads/schedlock.exp: current thread stepped locked (didn't run)
FAIL: gdb.threads/schedlock.exp: other thread 4 didn't run (stepping) (ran)
The first one is:
Cannot find thread 4101: no thread to satisfy query
The second set are some problem with set scheduler-locking that causes
GDB to lose control of some threads. I don't remember why this
happens, if I ever knew. The third set involve stopping in the wrong
thread.
You may have seen that, about three months ago now (?) I committed a
multi-thread support package for gdbserver. These tests were written
while I was developing it. If you run the testsuite against gdbserver
(which requires a little fiddling with the test harness still...) all
of these tests will pass. They sure didn't when I was working on it,
though, which is why I wrote them :)
> > OK to add these?
> >
>
> Michael Snyder, have you seen these?
>
>
> Daniel, in the meanwhile please fix your CL entries.
> After the "New file." please briefly say what the new files are for.
>
> Also, we need some comments in the new testfile headers saying
> what the tests are testing. So far we have to infer from the file names
> ;-)
In my defense, the first point is against GNU ChangeLog policy - you
aren't supposed to explain the "why" of things in ChangeLogs. I don't
really like that policy, so I'll be glad to elaborate :) I'll take
care of the comments too.
> Are there some lines missing in your get_current_thread proc?
> The second part is after a return that seem orphan in there.
Extra lines, actually. Only the part before the return is supposed to
be there, thanks for spotting that.
Thanks for the comments; I'll repost after Michael gets a chance to
comment on the tests themselves.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer