NAME
set_thread_area - Set a Thread Local Storage (TLS) area
SYNOPSIS
#include <linux/unistd.h>
#include <asm/ldt.h>
I int set_thread_area(struct user_desc * u_info );
DESCRIPTION
R set_thread_area ()
sets an entry in the current thread's Thread Local Storage (TLS) array.
The TLS array entry set by
R set_thread_area ()
corresponds to the value of
u_info->entry_number
passed in by the user.
If this value is in bounds,
R set_thread_area ()
copies the TLS descriptor pointed to by
u_info
into the thread's TLS array.
When
R set_thread_area ()
is passed an
entry_number
of -1, it uses a free TLS entry.
If
R 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
R 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
R set_thread_area ()
first appeared in Linux 2.5.29.
CONFORMING TO
R set_thread_area ()
is Linux specific and should not be used in programs that are intended
to be portable.
SEE ALSO