Originální popis anglicky:
set_thread_area - Set a Thread Local Storage (TLS) area
Návod, kniha: Linux Programmer's Manual
#include <linux/unistd.h>
#include <asm/ldt.h>
int set_thread_area (struct user_desc *u_info);
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
corresponds 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.
set_thread_area returns 0 on success, and -1 on failure, with
errno set appropriately.
- 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.
set_thread_area is Linux specific and should not be used in programs that
are intended to be portable.
A version of
set_thread_area first appeared in Linux 2.5.29.
get_thread_area(2).