From: Michael Karcher Date: Fri, 11 Jul 2008 16:04:46 +0000 (+0200) Subject: x86: fix ldt limit for 64 bit X-Git-Tag: v2.6.25.11~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=74454a6a286bfce4bb23d89bd465f856fa6a6e19;p=thirdparty%2Fkernel%2Fstable.git x86: fix ldt limit for 64 bit commit 5ac37f87ff18843aabab84cf75b2f8504c2d81fe upstream Fix size of LDT entries. On x86-64, ldt_desc is a double-sized descriptor. Signed-off-by: Michael Karcher Signed-off-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman --- diff --git a/include/asm-x86/desc.h b/include/asm-x86/desc.h index 5b6a05d3a7712..76ea17a52586a 100644 --- a/include/asm-x86/desc.h +++ b/include/asm-x86/desc.h @@ -191,8 +191,8 @@ static inline void native_set_ldt(const void *addr, unsigned int entries) unsigned cpu = smp_processor_id(); ldt_desc ldt; - set_tssldt_descriptor(&ldt, (unsigned long)addr, - DESC_LDT, entries * sizeof(ldt) - 1); + set_tssldt_descriptor(&ldt, (unsigned long)addr, DESC_LDT, + entries * LDT_ENTRY_SIZE - 1); write_gdt_entry(get_cpu_gdt_table(cpu), GDT_ENTRY_LDT, &ldt, DESC_LDT); __asm__ __volatile__("lldt %w0"::"q" (GDT_ENTRY_LDT*8));