From: Ulrich Drepper Date: Mon, 19 Aug 2002 22:21:32 +0000 (+0000) Subject: (DO_SET_THREAD_AREA): Use correct shift when computing index from %gs value. X-Git-Tag: upstream/2.30~21408 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3c1f5cab3991b8a9eeb1bdfcebb7115dc1244a54;p=external%2Fglibc.git (DO_SET_THREAD_AREA): Use correct shift when computing index from %gs value. --- diff --git a/linuxthreads/sysdeps/i386/useldt.h b/linuxthreads/sysdeps/i386/useldt.h index 49471d6..c028533 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) \