From a246a71975c1b4a939421ed20fdd8557f93de46f Mon Sep 17 00:00:00 2001 From: vinay harugop Date: Wed, 5 Aug 2009 02:09:29 +0530 Subject: Linux kernel helpers support is provided to android for its TLS implementation. This fix addresses this by modifying the TLS access functions to use the kernel helper. This Fix is verified on ST Ericsson's U8500 platform and Submitted on behalf of a third-party: Surinder-pal SINGH from STMicroelectronics. --- libc/private/bionic_tls.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libc/private/bionic_tls.h') diff --git a/libc/private/bionic_tls.h b/libc/private/bionic_tls.h index 82c8cd9..742ef8c 100644 --- a/libc/private/bionic_tls.h +++ b/libc/private/bionic_tls.h @@ -87,8 +87,10 @@ extern void __init_tls(void** tls, void* thread_info); extern int __set_tls(void *ptr); /* get the TLS */ +/* Linux kernel helpers for its TLS implementation */ #ifdef __arm__ -# define __get_tls() ( *((volatile void **) 0xffff0ff0) ) +typedef void* (__kernel_get_tls_t)(void); +#define __get_tls (*(__kernel_get_tls_t *)0xffff0fe0) #else extern void* __get_tls( void ); #endif -- cgit v1.1