guile-devel
[Top][All Lists]
Advanced

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

thread assert with 1.8.2


From: Greg Troxel
Subject: thread assert with 1.8.2
Date: Thu, 19 Jul 2007 20:56:23 -0400
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1 (berkeley-unix)

I just updated pkgsrc to 1.8.2, and on NetBSD-current/i386 make check
fails in the thread test with:

Running threads.test
guile: Error detected by libpthread: Unlocking unlocked mutex.
Detected by file 
"/usr/home/gdt/NetBSD-current/src/lib/libpthread/pthread_mutex.c", line 357, 
function "pthread_mutex_unlock".
See pthread(3) for information.
[1]   Abort trap (core dumped) ${dir}${tst}

The core has several threads, nad this is the one that hit the assert:

(gdb) bt
#0  0xbb9d6bdb in kill () from /usr/lib/libc.so.12
#1  0xbbaa3d9b in pthread__errorfunc () from /usr/lib/libpthread.so.0
#2  0xbbaa1d49 in pthread_mutex_unlock () from /usr/lib/libpthread.so.0
#3  0xbbb9875c in scm_leave_guile () from 
/usr/home/gdt/NetBSD-current/pkgsrc/lang/guile/work/guile-1.8.2/libguile/.libs/libguile.so.17
#4  0xbbb99c4e in on_thread_exit () from 
/usr/home/gdt/NetBSD-current/pkgsrc/lang/guile/work/guile-1.8.2/libguile/.libs/libguile.so.17
#5  0xbbaa0e1c in pthread__destroy_tsd () from /usr/lib/libpthread.so.0
#6  0xbbaa5119 in pthread_exit () from /usr/lib/libpthread.so.0
#7  0xbbaa5499 in pthread_setcancelstate () from /usr/lib/libpthread.so.0
#8  0xbb9f9370 in swapcontext () from /usr/lib/libc.so.12

Perhaps someone could try this on Linux with the right magic debug
variables to object to unlocking an unlocked mutex.  (On NetBSD, the
default behavior is to abort on any operation which the standard says is
undefined.)

On NetBSD 4.0ish, which has a different thread implementation, I get the
same assert.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]