This is the mail archive of the gdb@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: Problem with threaded program


At 06:49 PM 12/2/01, you wrote:
>On Sun, Dec 02, 2001 at 01:40:25PM -0500, Andrew Cagney wrote:
>
> >
> > Ah, looks like the GDB is corrupting a threaded programs FP registers
> > problem.
> >
> > I'm 99% certain this is in the thread-db/kernel interface that GDB is
> > using.  Each time this crops up, the problem gets resolved with a
> > kernel/library update.
> >
> > If someone can point out a definitive explination I'll add it to the
> > 5.1.1 PROBLEMS file.  That way it is at least clearly documented.
> >
> > The apparent 4.18 -> 5.0 ``breakage'' would have occured because GDB
> > switched to using the thread-db/kernel interface.
>
>Well, it happens every time we try to step over an fstpl instruction.
>We never call any of the SETREGS or POKE variants, only GETREGS and
>GETFPXREGS; I don't see how it could really be our bug.
>
>Note that in the non-threaded case we never call PTRACE_GETFPXREGS at
>all.  That's:
>  - an inefficency in the thread code, not surprisingly
>  - highly suggestive of a kernel bug.
>
>My money's on the kernel, but I don't have time to debug this just now.

Daniel,

I don't know what the division of labor is between gdb and the kernel for 
situations like this, so I can't comment on that.  I can report, however, 
that the problem doesn't occur with gdb-4.18.  I had previously tested with 
an old copy of gdb-4.18.  To remove one possible difference, I have tested 
for the problem using copies of both gdb-4.18 and gdb-5.1 built today under 
the 2.4.16 kernel.  gdb-4.18 works properly and gdb-5.1 shows the 
problem.  If the problem is in the kernel, then 4.18 and 5.1 must be using 
different capabilities ...

David


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