diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2015-11-24 20:27:09 -0600 |
---|---|---|
committer | Patrick Williams <iawillia@us.ibm.com> | 2015-12-11 15:30:27 -0600 |
commit | d0edb877c861c146e97745604a2d1933a4844130 (patch) | |
tree | 91115d61a0d3faf8d131c49ac7a3b704ec3cb95c /src/include | |
parent | 105660534e02cb3223dcba7d4f7d6a1ad0433317 (diff) | |
download | talos-hostboot-d0edb877c861c146e97745604a2d1933a4844130.tar.gz talos-hostboot-d0edb877c861c146e97745604a2d1933a4844130.zip |
libc support for thread-local storage
RTC: 124148
Change-Id: I055885bc7d7cfc4ebd7cf1a662f677bdf4e28c62
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22313
Tested-by: Jenkins Server
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-by: Brian Silver <bsilver@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/kernel/ppcconsts.S | 6 | ||||
-rw-r--r-- | src/include/kernel/task.H | 6 | ||||
-rw-r--r-- | src/include/sys/vfs.h | 4 |
3 files changed, 14 insertions, 2 deletions
diff --git a/src/include/kernel/ppcconsts.S b/src/include/kernel/ppcconsts.S index b58d41e65..6da85a9b2 100644 --- a/src/include/kernel/ppcconsts.S +++ b/src/include/kernel/ppcconsts.S @@ -5,7 +5,9 @@ # # OpenPOWER HostBoot Project # -# COPYRIGHT International Business Machines Corp. 2010,2014 +# Contributors Listed Below - COPYRIGHT 2010,2015 +# [+] International Business Machines Corp. +# # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -245,6 +247,8 @@ .set TASK_FPR_31, TASK_FPR_30+8 .set TASK_FPSCR, TASK_FPR_31+8 +.set TASK_TLS_CONTEXT, TASK_FP_CONTEXT+8 + .set CPU_KERNEL_STACK, 0 .set CPU_KERNEL_STACK_BOTTOM, CPU_KERNEL_STACK+8 .set CPU_CPUID, CPU_KERNEL_STACK_BOTTOM+8 diff --git a/src/include/kernel/task.H b/src/include/kernel/task.H index 47f143d77..0981dc3ab 100644 --- a/src/include/kernel/task.H +++ b/src/include/kernel/task.H @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2010,2014 */ +/* Contributors Listed Below - COPYRIGHT 2010,2015 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -93,6 +95,8 @@ struct task_t context_t context; /** Pointer to optional floating point context. */ context_fp_t* fp_context; + /** Thread-local-storage area for userspace. */ + void* tls_context; /** Task ID */ tid_t tid; diff --git a/src/include/sys/vfs.h b/src/include/sys/vfs.h index 0d496243f..7bbe73e30 100644 --- a/src/include/sys/vfs.h +++ b/src/include/sys/vfs.h @@ -97,6 +97,10 @@ extern VfsSystemModule VFS_MODULES[VFS_MODULE_MAX]; extern uint64_t VFS_LAST_ADDRESS; +// Offset for TLS "dtv-relative displacement". +// See http://www.uclibc.org/docs/tls-ppc64.txt +#define VFS_PPC64_DTPREL_OFFSET 0x8000 + #ifdef __cplusplus } #endif |