Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Dec 2009 17:24:35 +0800
From:      David Xu <davidxu@freebsd.org>
To:        Alexander Kabaev <kabaev@gmail.com>
Cc:        Daniel Eischen <deischen@freebsd.org>, freebsd-threads@freebsd.org
Subject:   Re: first patch for process-shared semaphore
Message-ID:  <4B39CAD3.6090704@freebsd.org>
In-Reply-To: <20091228150423.201936b4@kan.dnsalias.net>
References:  <4B317741.8080004@freebsd.org>	<200912240759.47703.jhb@freebsd.org>	<4B385BB9.3010109@freebsd.org>	<200912281121.30939.jhb@freebsd.org> <20091228150423.201936b4@kan.dnsalias.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Alexander Kabaev wrote:

>>> May I can move all semaphore functions into libc and remove all
>>> semaphore related symbols from libthr ? In pratical, this is not a
>>> problem, because libthr itself is not dlopen-safe, all missing
>>> semaphore functions in libthr will be found in libc by rtld.
>> I would go with this approach.  There is also some discussion about
>> moving all of libthr into libc as well and having a dummy libpthread
>> now that we are back to a single threading library and to avoid
>> issues with dlopen() of libpthread, etc.
>>
> 
> Removing symbols from library, versioned library especially, is a big 
> wrong. You should provide compat symbols for all functions that that
> were there before.  
> 

I have updated the patch:
http://people.freebsd.org/~davidxu/patch/shared_semaphore_2.patch

this time, all semaphore code are moved into libc and libthr still
has semaphore stubs.

Also, now semaphore file is created in /tmp as name SEMD<name>,
this looks like Solaris does as jhb@ said, though the patch doesn't
use lock file, but use the semaphore file itself.






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