From d26025d12463a902133bdc5b60d377d473294a8d Mon Sep 17 00:00:00 2001
From: Russ Cox <rsc@x40.(none)>
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));
 }
 
-- 
GitLab