summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2005-04-14 00:02:37 +0000
committerPeter Wemm <peter@FreeBSD.org>2005-04-14 00:02:37 +0000
commit4453c6dc677c67dba7385cbabd165577ceba8d1a (patch)
treefa5fdc944c961bccb59e0f9adb1cc4272c696c24 /lib
parent53193c146a58411097012d437d37639ffc285373 (diff)
Notes
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/i386/gen/_set_tp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/libc/i386/gen/_set_tp.c b/lib/libc/i386/gen/_set_tp.c
index 2380e99fe04a..287e0f2a6d0a 100644
--- a/lib/libc/i386/gen/_set_tp.c
+++ b/lib/libc/i386/gen/_set_tp.c
@@ -36,8 +36,11 @@ _set_tp(void *tp)
{
#ifndef COMPAT_32BIT
union descriptor ldt;
- int sel;
+ int error, sel;
+ error = i386_set_gsbase(tp);
+ if (error == 0)
+ return;
memset(&ldt, 0, sizeof(ldt));
ldt.sd.sd_lolimit = 0xffff; /* 4G limit */
ldt.sd.sd_lobase = ((uintptr_t)tp) & 0xffffff;