summaryrefslogtreecommitdiff
path: root/arch/s390/include/asm/thread_info.h
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2013-04-24 12:58:39 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2013-04-26 09:07:05 +0200
commit616498813b11ffefe1ed36b9f2e4fd2cdbd22f15 (patch)
tree1748b3171ab5cf1ada0c0bbeef285352c37edfcd /arch/s390/include/asm/thread_info.h
parentdc7ee00d4771b3218b10e09e1071ee6eb176d381 (diff)
s390: system call path micro optimization
Add a pointer to the system call table to the thread_info structure. The TIF_31BIT bit is set or cleared by SET_PERSONALITY exactly once for the lifetime of a process. With the pointer to the correct system call table in thread_info the system call code in entry64.S path can drop the check for TIF_31BIT which saves a couple of instructions. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/thread_info.h')
-rw-r--r--arch/s390/include/asm/thread_info.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/include/asm/thread_info.h b/arch/s390/include/asm/thread_info.h
index 9e2cfe0349c3..51035e5d86cb 100644
--- a/arch/s390/include/asm/thread_info.h
+++ b/arch/s390/include/asm/thread_info.h
@@ -41,6 +41,7 @@ struct thread_info {
struct task_struct *task; /* main task structure */
struct exec_domain *exec_domain; /* execution domain */
unsigned long flags; /* low level flags */
+ unsigned long sys_call_table; /* System call table address */
unsigned int cpu; /* current CPU */
int preempt_count; /* 0 => preemptable, <0 => BUG */
struct restart_block restart_block;