From owner-freebsd-current Sat May 30 18:31:16 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA09484 for freebsd-current-outgoing; Sat, 30 May 1998 18:31:16 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from cimlogic.com.au (cimlog.lnk.telstra.net [139.130.51.31]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id SAA09459 for ; Sat, 30 May 1998 18:31:12 -0700 (PDT) (envelope-from jb@cimlogic.com.au) Received: (from jb@localhost) by cimlogic.com.au (8.8.8/8.8.7) id LAA13018; Sun, 31 May 1998 11:39:35 +1000 (EST) (envelope-from jb) From: John Birrell Message-Id: <199805310139.LAA13018@cimlogic.com.au> Subject: Re: pthreads and thread-specific? In-Reply-To: <199805310107.SAA18476@rah.star-gate.com> from Amancio Hasty at "May 30, 98 06:07:06 pm" To: hasty@rah.star-gate.com (Amancio Hasty) Date: Sun, 31 May 1998 11:39:35 +1000 (EST) Cc: current@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL40 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Amancio Hasty wrote: > > I am trying to get ACE up and running on -current/elf and it appears > that the ACE's tests are not able to exit properly. Anyone got any > clues or thread-specific tests to verify the behavior of threads? [...] > #1 0x2819afe7 in _thread_kern_set_timeout (timeout=0x0) > at /usr/src/lib/libc_r/uthread/uthread_kern.c:680 > #2 0x28199f25 in pthread_yield () > at /usr/src/lib/libc_r/uthread/uthread_yield.c:48 > #3 0x2819a0ad in _spinlock (lck=0x281d5c04) > at /usr/src/lib/libc_r/uthread/uthread_spinlock.c:65 > #4 0x2819a221 in _thread_cleanupspecific () > at /usr/src/lib/libc_r/uthread/uthread_spec.c:178 You didn't answer my question (from private mail). What is the value in key_table[key].access_lock in this function? Is it valid (i.e. one of the threads below), or is it bogus? I have test applications that use this stuff and those tests pass, so there must either be a race condition, a corruption or another path thought the code that I haven't tested. You need to answer my question before I can answer yours! > #5 0x2819c7de in pthread_exit () > at /usr/src/lib/libc_r/uthread/uthread_exit.c:180 > #6 0x2816de50 in _thread_start () > at /usr/src/lib/libc_r/uthread/uthread_create.c:205 > > > ============= > ACTIVE THREADS > > -------------------- > Thread 0x8050a00 () prio 64 state Running [/usr/src/lib/libc_r/uthread/uthr > ead_cond.c:331] > -------------------- > Thread 0x8050800 () prio 64 state Running [/usr/src/lib/libc_r/uthread/uthr > ead_cond.c:331] > This is the running thread > -------------------- > Thread 0x8050400 () prio 64 state Running [/usr/src/lib/libc_r/uthread/uthr > ead_cond.c:331] > -------------------- > Thread 0x8050200 () prio 64 state Waiting on a condition variable [/usr/src > /lib/libc_r/uthread/uthread_cond.c:163] > This is the initial thread > > > DEAD THREADS > > Thread 0x8050600 prio 64 [/usr/src/lib/libc_r/uthread/uthread_exit.c:176] > > > ============= > FILE DESCRIPTOR TABLE > > fd[ 5] read owner 0x0 count 0 [/usr/src/lib/libc_r/uthread/uthread_fstat.c: > 49] > write owner 0x0 count 0 [/usr/src/lib/libc_r/uthread/uthread_write.c > :55] > ~ > ~ > ~ > ~ > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-current" in the body of the message > -- John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/ CIMlogic Pty Ltd, GPO Box 117A, Melbourne Vic 3001, Australia +61 418 353 137 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message