SET_THREAD_AREA(images) - phpMan

SET_THREAD_AREA(2)         Linux Programmer's Manual        SET_THREAD_AREA(2)

NAME
       set_thread_area - set a thread local storage (TLS) area
SYNOPSIS
       #include <linux/unistd.h>
       #include <asm/ldt.h>
       int set_thread_area(struct user_desc *u_info);
       Note: There is no glibc wrapper for this system call; see NOTES.
DESCRIPTION
       set_thread_area()  sets  an  entry in the current thread's thread-local
       storage (TLS) array.  The TLS array entry set by set_thread_area() cor-
       responds  to  the  value of u_info->entry_number passed in by the user.
       If this value is in bounds, set_thread_area() copies the TLS descriptor
       pointed to by u_info into the thread's TLS array.
       When  set_thread_area() is passed an entry_number of -1, it uses a free
       TLS entry.  If set_thread_area() finds a free TLS entry, the  value  of
       u_info->entry_number  is  set  upon  return  to  show  which  entry was
       changed.
RETURN VALUE
       set_thread_area() returns 0 on success, and -1 on failure,  with  errno
       set appropriately.
ERRORS
       EINVAL u_info->entry_number is out of bounds.
       EFAULT u_info is an invalid pointer.
       ESRCH  A free TLS entry could not be located.
VERSIONS
       A version of set_thread_area() first appeared in Linux 2.5.29.
CONFORMING TO
       set_thread_area()  is Linux-specific and should not be used in programs
       that are intended to be portable.
NOTES
       Glibc does not provide a wrapper for this system call, since it is gen-
       erally  intended  only for use by threading libraries.  In the unlikely
       event that you want to call it directly, use syscall(2).
SEE ALSO
       get_thread_area(2)
COLOPHON
       This page is part of release 3.53 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at http://www.kernel.org/doc/man-pages/.

Linux                             2012-07-13                SET_THREAD_AREA(2)