From c7317d4dc74bcb1d0e939c6b06a724fce1510a4e Mon Sep 17 00:00:00 2001
From: kolya <kolya>
Date: Wed, 24 Sep 2008 01:48:31 +0000
Subject: always save and restore %fs, %gs to ensure old segment entries are
 never accessible to user from the hidden CPU segment registers.

---
 trapasm.S | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'trapasm.S')

diff --git a/trapasm.S b/trapasm.S
index acdca99..962ba10 100644
--- a/trapasm.S
+++ b/trapasm.S
@@ -8,6 +8,8 @@ alltraps:
   # Build trap frame.
   pushl %ds
   pushl %es
+  pushl %fs
+  pushl %gs
   pushal
   
   # Set up data segments.
@@ -24,6 +26,8 @@ alltraps:
 .globl trapret
 trapret:
   popal
+  popl %gs
+  popl %fs
   popl %es
   popl %ds
   addl $0x8, %esp  # trapno and errcode
-- 
cgit v1.2.3