Subject: Re: Is netbsd-3.0/ld.elf.so is thread safe ???
To: Charles M. Hannum <mycroft@mit.edu>
From: sushant mathur <sushant.iet@gmail.com>
List: port-arm
Date: 04/17/2006 18:30:33
------=_Part_43200_1062548.1145278833676
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
Hi Sorry for Delayed response as i was on leave
well I need to ask some more query on this issue
>It's thread-safe WRT multiple CPUs doing lazy binding at the same time.
> >This is guaranteed by having the binder not modify any internal data
> >structures, only doing atomic updates to the PLTGOT at the end. (This
> >was not the case in old versions of NetBSD. I fixed it several years
> >ago.)
1) Whether this change is present in netbsd-1.6 or not
2)Can You Tell whether dlopen/dlsym bindings are thread specific or proces=
s
specific,Is there any specfication which clearly specifies this ???
3) My Application is working Fine on i686 but on arm it's giving the
problem,
So is it a architecture issue?
>However, multiple simultaneous calls to dlopen() will probably lose.
> >This would be fairly easy to fix if someone cared.
1)If i want to make netbsd3.0 thread safe then is it sufficient to make all
dlopen/dlsym thread safe by doing mutex locking and unlocking?
2)If i want to make lazy binding thread safe on uniprocessor system, then
the code executed during lazy binding has to be made thread safe using
mutex lock and unlock?
------=_Part_43200_1062548.1145278833676
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
Hi Sorry for Delayed response as i was on leave<br>well I need to ask some =
more query on this issue<br><br>
<div>
<blockquote class=3D"gmail_quote" style=3D"PADDING-LEFT: 1ex; MARGIN: 0px 0=
px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">>It's thread-safe WRT multipl=
e CPUs doing lazy binding at the same time.<br>>This is guaranteed by ha=
ving the binder not modify any internal data
<br>>structures, only doing atomic updates to the PLTGOT at the end.&nbs=
p; (This<br>>was not the case in old versions of NetBSD.  =
;I fixed it several years<br>>ago.)</blockquote>
<div> </div>
<div> </div><br>
<blockquote class=3D"gmail_quote" style=3D"PADDING-LEFT: 1ex; MARGIN: 0px 0=
px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">1) Whether this change is presen=
t in netbsd-1.6 or not</blockquote>
<div>
<p>2)Can You Tell whether dlopen/dlsym bindings are thread specific or proc=
ess<br>specific,Is there any specfication which clearly specifies this ???<=
/p>
<p>3) My Application is working Fine on i686 but on arm it's giving the<br>=
problem,<br>So is it a architecture issue?</p></div><br>
<blockquote class=3D"gmail_quote" style=3D"PADDING-LEFT: 1ex; MARGIN: 0px 0=
px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">>However, multiple simultaneo=
us calls to dlopen() will probably lose.<br>>This would be fairly easy t=
o fix if someone cared.
</blockquote>
<div> </div>
<div> </div>
<div>
<p>1)If i want to make netbsd3.0 thread safe then is it sufficient to make =
all<br>dlopen/dlsym thread safe by doing mutex locking and unlocking?</p>
<p>2)If i want to make lazy binding thread safe on uniprocessor system, the=
n<br>the code executed during lazy binding has to be made thread safe using=
<br>mutex lock and unlock?</p></div><br> </div><br>
------=_Part_43200_1062548.1145278833676--