diff --git a/include/asm-x86/desc_64.h b/include/asm-x86/desc_64.h index c037c7d55b92189a4b6b4b2d4824efa95535b786..448f96ed973fa77f7352be3a7149240108adf044 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 7b7f8a142e205b29074082209003491af7782d59..a0a9e551509774924245639cf72c50c980b4672d 100644 --- a/include/asm-x86/processor_64.h +++ b/include/asm-x86/processor_64.h @@ -19,6 +19,7 @@ #include #include #include +#include #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 { \