Linux x86_64Sistema & diversos#205Depreciada
set_thread_area
Configurava uma entrada de thread-local storage na GDT — mecanismo de 32-bit, sem efeito direto em x86_64.
Descrição
Em x86_64, TLS é configurado via `arch_prctl(ARCH_SET_FS)`; esta syscall existe no número da tabela x86_64 majoritariamente para suporte ao subsistema de compatibilidade com binários 32-bit.
man 2
Depreciada
Use `arch_prctl` em código x86_64 nativo — esta syscall é relevante apenas para o subsistema de compatibilidade 32-bit.
Assinatura
int set_thread_area(struct user_desc * u_info);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| u_info | struct user_desc * | Descreve a entrada de TLS a configurar (semântica de 32-bit). |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | u_infostruct user_desc * |
Valor de retorno
Retorna erro (ENOSYS) quando chamada diretamente em contexto 64-bit puro.
Códigos de erro (errno)
- ENOSYS(38)
- Chamada de sistema não implementada nesta versão do kernel.
- EINVAL(22)
- Argumento inválido.