[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Help debugging glibc pthread_join freezing on sarge using PD/pdp/Gem software



hi Joerg,

Thanks for very much for responding.

Here is my output, looks to be identical to yours.

GNU C Library stable release version 2.3.5, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.0.2 20050725 (prerelease) (Debian 4.0.1-3).
Compiled on a Linux 2.6.13 system on 2005-08-27.
Available extensions:
        GNU libio by Per Bothner
        crypt add-on version 2.1 by Michael Glad and others
        linuxthreads-0.10 by Xavier Leroy
        BIND-8.2.3-T5B
        libthread_db work sponsored by Alpha Processor Inc
        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Thread-local storage support included.

I was having this crash with 2.3.2 and then I upgraded my libc6 to
unstable. I recompiled the application and it still crashes with the
identical trace.

Do I need to upgrade something other than libc6 and locales to get these
programs to compile properly?

I don't know anything about pthreads so I can't really see how changing
my libc6 version is not making any difference... unless this crash is
not related to the NPTL? (what is this anyway?).

I'm looking forward to hearing the responces to your confusion as as far
as I could tell upgrading to 2.3.5 should have fixed the crash...

Thanks again,

Let me know if there is anymore debugging I can do to give you all more
information.

b.


Joerg wrote:

See below output.  I have a dumb question, if I remember correctly,
running /lib/libc.so.6 used to include NPTL.  Is that no longe the
case?  The threading problems with 2.6.x + libc 2.3.2 were related to
the NPTL version, no?  Now I seeno more NPTL in 2.3.5 or even the
current 2.3.2.  Maybe I'm missing something.

./libc-2.3.5.so
GNU C Library stable release version 2.3.5, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.0.2 20050725 (prerelease) (Debian 4.0.1-3).
Compiled on a Linux 2.6.13 system on 2005-08-29.
Available extensions:
        GNU libio by Per Bothner
        crypt add-on version 2.1 by Michael Glad and others
        linuxthreads-0.10 by Xavier Leroy
        BIND-8.2.3-T5B
        libthread_db work sponsored by Alpha Processor Inc
        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Thread-local storage support included.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.


B. Bogart wrote:


Hello all,

I tried on debian-user without any luck, perhaps someone on here will
have an idea how I can further debug this issue. Sorry for anyone who
got tired of seeing this on debian-user.

I'm running a stock sarge machine with the 32bit 2.6.8 kernel on a AMD64
3200+ machine. I'm using some unstable and demudi packages for media
applications, in particular pure-data (PD).

Problem I'm having is that PD crashes when I try and use v4l2.  Actually
there is no fault, but PD hangs. I traced it down to the use of
pthread_join() which is where the code hangs. (I've been doing a
backtrace after manually killing the application)

I tried upgrading my libc6 2.3.2.ds1-22.d to 2.3.5 and am still getting
the same crash. Here are a couple examples of traces:

(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x40128f18 in pthread_join () from /lib/tls/i686/cmov/libpthread.so.0
#2  0x44bd97bd in videoV4L::stopTransfer () from
/usr/lib/pd/extra/Gem.pd_linux
#3  0x44bd504c in pix_videoNEW::stopRendering ()
     from /usr/lib/pd/extra/Gem.pd_linux
#4  0x44b0111e in GemBase::gem_startstopMess ()
     from /usr/lib/pd/extra/Gem.pd_linux
#5  0x44b01382 in GemBase::gem_MessCallback ()
     from /usr/lib/pd/extra/Gem.pd_linux
#6  0x0809ba47 in pd_typedmess ()
#7  0x00000000 in ?? ()

(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x40128f18 in pthread_join () from /lib/tls/i686/cmov/libpthread.so.0
#2  0x42a86440 in pdp_sdl_setup () from /usr/lib/pd/extra/pdp.pd_linux

Gem.pd_linux & pdp.pd_linux are libs loaded into PD. I have recompiled
Gem.pd_linux from source and it still crashes.

Possible issues:

PD is from the demudi (stable) package
Gem is compiled from source
PDP is from the demudi (stable) package

The crash still happens on libc6 2.3.2, and 2.3.5

If this crash is caused because the packages were compiled against a
different version of libc6 I tried to compile PD from source as well.

So with Gem compiled from source and PD compiled from source (both
against libc6 2.3.5) I still get the crash. No other libs are noted in
the backtrace, could one of the other libs actually be the cause? Gem
links with libmpeg3,libmpeg,aviplay,ffmpeg etc.. But I don't see any
calls to these in the trace...

So to recap, PD and Gem are recompiled from source against my libc6
2.3.5 (unstable) pthread_join() still crashes, only these two packages
are in the trace... So what is causing the crash?

Any suggestions, especially for debugging beyond the gdb backtrace,
would be greatly appreciated. I've read of some people have issues with
AMD64 and pthreads, but those seemed to get resolved by upgrading to
libc6 2.3.5.

So what should I do to try and solve this?
Are there known bugs with my configuration and pthreads?

I'm doing an art installation on this machine in just weeks so I really
need to get it working or I'll have to resort to dropping linux and
going to an OS X machine. :(

Thanks all for your time and attention.

B.






Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: