From d26025d12463a902133bdc5b60d377d473294a8d Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 2 Sep 2009 10:09:34 -0700 Subject: [PATCH] can set just %gs now. --- proc.c | 3 +-- x86.h | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/proc.c b/proc.c index 73cad6d..2a878fa 100644 --- a/proc.c +++ b/proc.c @@ -72,10 +72,9 @@ ksegment(void) c->gdt[SEG_KDATA] = SEG(STA_W, 0, 0xffffffff, 0); c->gdt[SEG_KCPU] = SEG(STA_W, &c->cpu, 8, 0); lgdt(c->gdt, sizeof(c->gdt)); - loadfsgs(SEG_KCPU << 3); + loadgs(SEG_KCPU << 3); // Initialize cpu-local storage. - asm volatile(""); // Do not let gcc reorder across this line. cpu = c; proc = 0; } diff --git a/x86.h b/x86.h index e754b28..fcd3062 100644 --- a/x86.h +++ b/x86.h @@ -104,9 +104,8 @@ xchg(volatile uint *addr, uint newval) } static inline void -loadfsgs(ushort v) +loadgs(ushort v) { - asm volatile("movw %0, %%fs" : : "r" (v)); asm volatile("movw %0, %%gs" : : "r" (v)); }