[NPTL] Questions about testing

Carmelo AMOROSO carmelo.amoroso at st.com
Tue Apr 21 05:42:25 UTC 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dan E wrote:
> On Sat, 18 Apr 2009 18:20 +0200, "Carmelo Amoroso" <carmelo73 at gmail.com>
> wrote:
>> IIRC, on sh, tls testes pass all, only 3 failures with nptl
>> (tst-cpuclocks),
>> and probably the tests have some errors.
>> I'll send you a full log next week.
>>
>> I published months ago some test results (with very olf nptl revision).
>> You can find it here :
>> http://www.uclibc.org/~carmelo/uclibc-nptl_tests.html
> 
> Thanks.  I had 10 out of 16 TLS tests ok on mips.  After some
> experimentation I got that up to 13 out of 16.  
what changes ? common code is stable and correct, I think.
The TLS tests aren't
> actively multithreaded, however.  
is this a problem ? I don't understand.
> They deal with different shared
> objects (libraries?) loading and unloading, and the effects on the TLS
> blocks and vector.  It's a guessing game whether changes to TLS will be
> "correct" when moving on to the NPTL tests. 
???
> They should be, but the
> documentation is really bad in some ways, not to mention the code itself
> has almost no comments.  There's a lot of MIPS-only code, and that makes
> it difficult to draw on other architectures' implementations for
> guidance.  sjhill's README is also very much out of date.
> 
> Is it normal to see the resolve function in elfinterp.c run for the
> shared libraries _before_ the main executable?  In other words, the
> dependencies are processed first?  That's what I'm seeing.
> 
yes, this is how dynamic linker work.
> I now see the reason for the second hash function.  The matched symbol's
> st_value is the one that's needed (it's a TLS offset), but the original
> hash function doesn't return a pointer to its Elf_sym.  Thus the need
> for a second hash function.  I think this is MIPS-only as well.  And
> maybe PowerPC, but I'm not going there.  I will try that next.
> 

the hash2 function should be removed, but the calling code must be
adapted accordingly. The new hash function I implemented with the
extra tpnt pointer for the tls should be enough; sh and arm are
using it correclty. MIPS development was stoppped since a lot of
time. So if you have time to update the MIPS part for using the hash
new function, it's welcome.
Don't hesitate to ask on TLS part, I spent a lot of time on this in
the past ;-)

cheers,
carmelo
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iEYEARECAAYFAkntXMEACgkQoRq/3BrK1s/dPQCgz9n/FTf1hjLD19eTA0np8ayT
szYAoI/G+vrnnoDPyj9L4YrUX7FoqrCq
=4Lnk
-----END PGP SIGNATURE-----


More information about the uClibc mailing list