1
0
Fork 0
mirror of git://git.musl-libc.org/musl synced 2025-03-06 20:48:29 +01:00

fix x32 __set_thread_area failure due to junk in upper bits

the kernel does not properly clear the upper bits of the syscall
argument, so we have to do it before the syscall.
This commit is contained in:
Rich Felker 2015-05-02 11:53:45 -04:00
parent 4f69594689
commit 2d5c74c21e

View file

@ -3,7 +3,7 @@
.global __set_thread_area
.type __set_thread_area,@function
__set_thread_area:
mov %rdi,%rsi /* shift for syscall */
mov %edi,%esi /* shift for syscall */
movl $0x1002,%edi /* SET_FS register */
movl $0x4000009e,%eax /* set fs segment to */
syscall /* arch_prctl(SET_FS, arg)*/