svn commit: r232582 - head/lib/libc/gen

Oleksandr Tymoshenko gonzo at freebsd.org
Tue Mar 13 20:52:18 UTC 2012


On 13/03/2012 9:21 AM, Marcel Moolenaar wrote:
>
> On Mar 5, 2012, at 7:42 PM, Oleksandr Tymoshenko wrote:
>> @@ -308,6 +308,13 @@ _init_tls()
>> 		}
>> 	}
>>
>> +#ifdef TLS_VARIANT_I
>> +	/*
>> +	 * tls_static_space should include space for TLS structure
>> +	 */
>> +	tls_static_space += TLS_TCB_SIZE;
>> +#endif
>> +
>
> How does this change behaviour on ia64 or powerpc?

I believe it doesn't.

nathanw@ performed some sanity tests on powerpc recently,
and they passed. ia64 has not been tested.

This issue manifested itself only with statically linked binaries.
Juli presented some corner case test for MIPS that caused crash:
binary compiled with "-static -pthread" without any actual thread-
specific variables that tries to get TP pointer.
This test case leads to crash and I used it for tracking down the
root cause. For binaries with actual TLS data this issue would manifest
itself as memory corruption.


More information about the svn-src-all mailing list