about summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-08-19 22:21:32 +0000
committerUlrich Drepper <drepper@redhat.com>2002-08-19 22:21:32 +0000
commit3c1f5cab3991b8a9eeb1bdfcebb7115dc1244a54 (patch)
tree609f8bc138766fccf2a72490ee676fae84872521 /linuxthreads
parent66437ab34d4c70655a4d394af84f58fa771e269c (diff)
downloadglibc-3c1f5cab3991b8a9eeb1bdfcebb7115dc1244a54.tar.gz
glibc-3c1f5cab3991b8a9eeb1bdfcebb7115dc1244a54.tar.xz
glibc-3c1f5cab3991b8a9eeb1bdfcebb7115dc1244a54.zip
(DO_SET_THREAD_AREA): Use correct shift when computing index from %gs value.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/sysdeps/i386/useldt.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/linuxthreads/sysdeps/i386/useldt.h b/linuxthreads/sysdeps/i386/useldt.h
index 49471d61fa..c0285330e9 100644
--- a/linuxthreads/sysdeps/i386/useldt.h
+++ b/linuxthreads/sysdeps/i386/useldt.h
@@ -83,7 +83,7 @@ extern int __modify_ldt (int, struct modify_ldt_ldt_s *, size_t);
 ({									      \
   int __gs;								      \
   struct modify_ldt_ldt_s ldt_entry =					      \
-    { ({ asm ("movw %%gs, %w0" : "=q" (__gs)); __gs >> 2; }),		      \
+    { ({ asm ("movw %%gs, %w0" : "=q" (__gs)); __gs >> 3; }),		      \
       (unsigned long int) descr, sizeof (struct _pthread_descr_struct),	      \
       1, 0, 0, 0, 0, 1, 0 };						      \
   __builtin_expect (INLINE_SYSCALL (set_thread_area, 1, &ldt_entry) == 0, 1)  \