From 24321b0f96fa0c86646f5cd090aa076e086f2de6 Mon Sep 17 00:00:00 2001 From: Jonas 'Sortie' Termansen Date: Sat, 12 Apr 2014 18:11:27 +0200 Subject: [PATCH] Fix wrong TSS limit. --- kernel/x86-family/gdt.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/x86-family/gdt.cpp b/kernel/x86-family/gdt.cpp index a4361b73..23b2698b 100644 --- a/kernel/x86-family/gdt.cpp +++ b/kernel/x86-family/gdt.cpp @@ -206,7 +206,7 @@ void WriteTSS(int32_t num, uint16_t ss0, uintptr_t stack0) { // First, let's compute the base and limit of our entry in the GDT. uintptr_t base = (uintptr_t) &tss_entry; - uint32_t limit = base + sizeof(tss_entry); + uint32_t limit = sizeof(tss_entry) - 1; // Now, add our TSS descriptor's address to the GDT. #if defined(__i386__)