Linux Blog

SET_THREAD_AREA

Section: Linux Programmer's Manual (2)
Updated: 2003-02-21
Index Return to Main Contents
 

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);  

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() 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.  

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.  

SEE ALSO

get_thread_area(2)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
VERSIONS
CONFORMING TO
SEE ALSO




Random Man Pages:
putpmsg
tty
tkill
hangman