Subject: Re: After newlock2 merge: Different pthread behavior
To: None <M.Drochner@fz-juelich.de>
From: Steven M. Bellovin <smb@cs.columbia.edu>
List: current-users
Date: 03/23/2007 21:51:29
On Sat, 24 Mar 2007 00:50:51 +0100
Matthias Drochner <M.Drochner@fz-juelich.de> wrote:

> 
> M.Drochner@fz-juelich.de said:
> > This is a "make" mostly
> 
> I just got a fresh coredump:
> 
> #0  0xbbb2c0ff in kill () from /usr/lib/libc.so.12
> #1  0xbbbc76d8 in abort () from /usr/lib/libc.so.12
> #2  0xbbbc5f74 in tcgetattr () from /usr/lib/libc.so.12
> #3  0xbbbc5fa5 in tcgetattr () from /usr/lib/libc.so.12
> #4  0xbbbc72d5 in free () from /usr/lib/libc.so.12
> #5  0x0804b61b in CompatRunCommand ()
> #6  0x080525a0 in Lst_ForEachFrom ()
> #7  0x08052551 in Lst_ForEach ()
> #8  0x0804af75 in Compat_Make ()
> #9  0x080525a0 in Lst_ForEachFrom ()
> #10 0x08052551 in Lst_ForEach ()
> #11 0x0804ae0e in Compat_Make ()
> #12 0x0804b230 in Compat_Run ()
> #13 0x08054e04 in main ()
> 
Was there anything on the console?  That's an abort() call -- for that
matter, I think your previous one was, too -- and may be application
bugginess.  Look at  /usr/src/lib/libc/termios/tcgetattr.c -- there's
a _DIAGASSERT that might have failed.  I don't see the call in free(),
but I suspect it's a diagnostic call, too.

Now -- why that pointer might be null is an interesting question; I
have no theories on that.



		--Steve Bellovin, http://www.cs.columbia.edu/~smb