diff options
author | dzwdz | 2022-05-29 21:21:46 +0200 |
---|---|---|
committer | dzwdz | 2022-05-29 21:21:46 +0200 |
commit | c3e611ecf1e0f6ac5790e56bb0b21d30f5253d15 (patch) | |
tree | e47b9d9ba7489c7510498895620217c9e6514e5b /src/kernel/arch/i386/gdt/gdt.c | |
parent | a6ed7a20a823e67c19b93309706c57ddee1933c6 (diff) |
kernel: fix overlapping interrupt / regular stacks
Diffstat (limited to 'src/kernel/arch/i386/gdt/gdt.c')
-rw-r--r-- | src/kernel/arch/i386/gdt/gdt.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/arch/i386/gdt/gdt.c b/src/kernel/arch/i386/gdt/gdt.c index f016caa..3662bf6 100644 --- a/src/kernel/arch/i386/gdt/gdt.c +++ b/src/kernel/arch/i386/gdt/gdt.c @@ -4,7 +4,7 @@ #include <stdbool.h> #include <stdint.h> -extern char _isr_stack_top; +extern char _isr_mini_stack; struct gdt_entry { uint64_t limit_low : 16; @@ -83,7 +83,7 @@ static void gdt_prepare(void) { // tss memset(&TSS, 0, sizeof(TSS)); TSS.ss0 = SEG_r0data << 3; // kernel data segment - TSS.esp0 = (uintptr_t) &_isr_stack_top; + TSS.esp0 = (uintptr_t) &_isr_mini_stack; GDT[SEG_TSS] = (struct gdt_entry) { .limit_low = sizeof(TSS), |