summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlauber de Oliveira Costa2008-01-30 13:31:14 +0100
committerIngo Molnar2008-01-30 13:31:14 +0100
commit26048d75e8d6c840742468667f4a7ab8c2df74c9 (patch)
treea5d2353d3a3dfe3c2d5dc78727e260365c10aab1
parentx86: unify non-paravirt parts of desc.h (diff)
downloadkernel-qcow2-linux-26048d75e8d6c840742468667f4a7ab8c2df74c9.tar.gz
kernel-qcow2-linux-26048d75e8d6c840742468667f4a7ab8c2df74c9.tar.xz
kernel-qcow2-linux-26048d75e8d6c840742468667f4a7ab8c2df74c9.zip
x86: use the same data type for tls_array.
This patch changes the type of tls_array in x86_64 to a desc_struct. Now, both i386 and x86_64 tls_array have the same type, and code accessing it can be shared. Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--include/asm-x86/desc_64.h2
-rw-r--r--include/asm-x86/processor_64.h3
2 files changed, 3 insertions, 2 deletions
diff --git a/include/asm-x86/desc_64.h b/include/asm-x86/desc_64.h
index c037c7d55b92..448f96ed973f 100644
--- a/include/asm-x86/desc_64.h
+++ b/include/asm-x86/desc_64.h
@@ -150,7 +150,7 @@ static inline void set_ldt(void *addr, int entries)
static inline void load_TLS(struct thread_struct *t, unsigned int cpu)
{
unsigned int i;
- u64 *gdt = (u64 *)(get_cpu_gdt_table(cpu) + GDT_ENTRY_TLS_MIN);
+ struct desc_struct *gdt = (get_cpu_gdt_table(cpu) + GDT_ENTRY_TLS_MIN);
for (i = 0; i < GDT_ENTRY_TLS_ENTRIES; i++)
gdt[i] = t->tls_array[i];
diff --git a/include/asm-x86/processor_64.h b/include/asm-x86/processor_64.h
index 7b7f8a142e20..a0a9e5515097 100644
--- a/include/asm-x86/processor_64.h
+++ b/include/asm-x86/processor_64.h
@@ -19,6 +19,7 @@
#include <linux/personality.h>
#include <linux/cpumask.h>
#include <asm/processor-flags.h>
+#include <asm/desc_defs.h>
#define TF_MASK 0x00000100
#define IF_MASK 0x00000200
@@ -244,7 +245,7 @@ struct thread_struct {
* goes into MSR_IA32_DS_AREA */
unsigned long ds_area_msr;
/* cached TLS descriptors. */
- u64 tls_array[GDT_ENTRY_TLS_ENTRIES];
+ struct desc_struct tls_array[GDT_ENTRY_TLS_ENTRIES];
} __attribute__((aligned(16)));
#define INIT_THREAD { \