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