Skip to content

Commit

Permalink
x86: fix ldt limit for 64 bit
Browse files Browse the repository at this point in the history
Fix size of LDT entries. On x86-64, ldt_desc is a double-sized descriptor.

Signed-off-by: Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Michael Karcher authored and Ingo Molnar committed Jul 12, 2008
1 parent a361ee5 commit 5ac37f8
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions include/asm-x86/desc.h
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,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));
Expand Down

0 comments on commit 5ac37f8

Please sign in to comment.