aboutsummaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-09-28 00:00:40 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-09-28 00:00:40 +0200
commit03e70decd6736c5047df09f04d024a3de63a6c6a (patch)
tree860d707c61fd73862fdfcaca7a012d826928c1d3 /i386
parentd2c054bc665e85550b2b077b1dfbe25bfeda7b67 (diff)
downloadgnumach-03e70decd6736c5047df09f04d024a3de63a6c6a.tar.gz
gnumach-03e70decd6736c5047df09f04d024a3de63a6c6a.tar.bz2
gnumach-03e70decd6736c5047df09f04d024a3de63a6c6a.zip
x86_64: remove more unneeded segment selectors handling on full 64bit
This follows aaa33bd1ef300380279d9e2875b61a7abaf2c88d
Diffstat (limited to 'i386')
-rw-r--r--i386/i386/pcb.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/i386/i386/pcb.c b/i386/i386/pcb.c
index 9576c147..e8901550 100644
--- a/i386/i386/pcb.c
+++ b/i386/i386/pcb.c
@@ -492,10 +492,12 @@ kern_return_t thread_setstatus(
*/
state->cs &= 0xffff;
state->ss &= 0xffff;
+#if !defined(__x86_64__) || defined(USER32)
state->ds &= 0xffff;
state->es &= 0xffff;
state->fs &= 0xffff;
state->gs &= 0xffff;
+#endif
if (state->cs == 0 || (state->cs & SEL_PL) != SEL_PL_U
|| state->ss == 0 || (state->ss & SEL_PL) != SEL_PL_U)