Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Apr 2006 08:01:36 +0200 (CEST)
From:      Joerg Pulz <Joerg.Pulz@frm2.tum.de>
To:        Daniel Eischen <deischen@freebsd.org>
Cc:        freebsd-threads@freebsd.org, freebsd-sparc64@freebsd.org, Kris Kennaway <kris@obsecurity.org>
Subject:   Re: pthread_mutex_timedlock on sparc64
Message-ID:  <20060420074713.Y52948@hades.admin.frm2>
In-Reply-To: <Pine.GSO.4.64.0604190835400.1870@sea.ntplx.net>
References:  <20060418204240.GA69833@xor.obsecurity.org> <001801c66372$a032e770$2522630a@t22> <20060419054116.GA39394@xor.obsecurity.org> <Pine.GSO.4.64.0604190835400.1870@sea.ntplx.net>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


On Wed, 19 Apr 2006, Daniel Eischen wrote:

> On Wed, 19 Apr 2006, Kris Kennaway wrote:
>
>> On Wed, Apr 19, 2006 at 03:32:18PM +1000, Sean Winn wrote:
>>> Kris Kennaway wrote:
>>>> On Tue, Apr 18, 2006 at 07:28:00PM +1000, Sean Winn wrote:
>>>>> owner-freebsd-sparc64@freebsd.org wrote:
>>>>>> 
>>>>>> libthr *is* the thread library on sparc64; as Daniel says,
>>>>>> libpthread is not ported to sparc64.
>>>>>> 
>>>>>> Kris
>>>>> 
>>>>> Not yet in 6.x
>>>>> 
>>>>> 19:25 Tue 18-Apr sean@bloody [~] uname -msr
>>>>> FreeBSD 6.1-RC1 sparc64
>>>>> 19:25 Tue 18-Apr sean@bloody [~] ls -l /usr/lib/libpthread.so
>>>>> lrwxrwxrwx  1 root  wheel  9 Apr 17 04:05 /usr/lib/libpthread.so ->
>>>>> libc_r.so
>>>> 
>>>> Oops, I forgot about that..although so did David when he removed
>>>> libc_r from 7.0 and broke sparc :-)
>>>> 
>>>> So I guess this is a libc_r missing feature.  Probably the solution is
>>>> to use libthr on 6.x too (I don't know if it works well enough on
>>>> 5.x).  libthr causes witness panics under load on sparc64 though.
>>>> 
>>>> Kris
>>> 
>>> Would threading problems be related to sparc64/73413? I've noticed it
>>> sitting idle for a long while, and the test case still core dumps. The
>>> PR it references (sparc64/72998) also is open.
>> 
>> Huh, turns out libpthread does exist on sparc, it's just called
>> libkse.  Anyway, since it's not in use the PR wasn't relevant.
>
> Yeah, I implemented as much as I could for it, but it doesn't
> work.  So it's installed as libkse as a prod for someone to
> finish and test it.

First, thanks for all your responses.
I found an Ultra 10 machine in a dark corner of my office an reactivated 
it.
Installation went fine, the system is not very fast but runs without 
problems. Unfortunately, it is an IDE system, so disk access is a bit 
slow.
It runs now a RELENG_6_1 and it is correct that the 
"pthread_mutex_timedlock" symbol is missing in libpthread, which is 
actually a link to libc_r. The "pthread_mutex_timedlock" is only in libthr 
and libkse, which is actually libpthread on sparc64 and alpha according to 
src/lib/libpthread/Makefile.

I decided to give libkse a try and started building net/openmcu and all 
ports it depends on with 'make PTHREAD_LIBS="-lkse"' and so far, compiling 
and linking was fine. But as soon as i try to execute the resulting 
binary, it dumps core. Currently i did no further investigation on this.

I will start another run today, to give libthr a try. Lets see how this 
works.

Anyway, i will submit PR's for the relevant ports to please pointyhat.

Kind regards
Joerg

- -- 
The beginning is the most important part of the work.
 				-Plato
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFERyPDSPOsGF+KA+MRAhWVAJ90MXngOQ/4ZgxeGnwwtEHZ85ZbPgCgkvHA
snZ93oL9FspaUYQLa0OuR7Q=
=H+fl
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060420074713.Y52948>