* Re: syscall documentation (5 and last)
@ 2003-02-07 22:37 Andries.Brouwer
0 siblings, 0 replies; 3+ messages in thread
From: Andries.Brouwer @ 2003-02-07 22:37 UTC (permalink / raw)
To: Andries.Brouwer, jamie; +Cc: linux-kernel
> I think that should be GS.
Thanks!
man-pages-1.55 is out already - this is the first correction for 1.56.
Andries
[Primary-site: ftp://ftp.win.tue.nl/pub/linux-local/manpages]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: syscall documentation (5 and last)
2003-02-06 20:12 Andries.Brouwer
@ 2003-02-07 22:30 ` Jamie Lokier
0 siblings, 0 replies; 3+ messages in thread
From: Jamie Lokier @ 2003-02-07 22:30 UTC (permalink / raw)
To: Andries.Brouwer; +Cc: linux-kernel
Andries.Brouwer@cwi.nl wrote:
> ARCH_SET_FS
> Set the 64bit base for the FS register to addr.
...
> ARCH_SET_GS
> Set the 64bit base for the FS register to addr.
^^
I think that should be GS.
-- Jamie
^ permalink raw reply [flat|nested] 3+ messages in thread
* syscall documentation (5 and last)
@ 2003-02-06 20:12 Andries.Brouwer
2003-02-07 22:30 ` Jamie Lokier
0 siblings, 1 reply; 3+ messages in thread
From: Andries.Brouwer @ 2003-02-06 20:12 UTC (permalink / raw)
To: linux-kernel
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2572 bytes --]
The fifth new page is arch_prctl.2.
Comments welcome.
Andries
aeb@cwi.nl
-----------------------------------
NAME
arch_prctl - Set architecture specific thread state.
SYNOPSIS
#include <asm/prctl.h>
#include <sys/prctl.h>
int arch_prctl(int code, unsigned long addr)
DESCRIPTION
The arch_prctl function sets architecture specific process
or thread state. code selects a subfunction and passes
argument addr to it.
Sub functions for x86-64 are:
ARCH_SET_FS
Set the 64bit base for the FS register to addr.
ARCH_GET_FS
Return the 64bit base value for the FS register of
the current thread in the unsigned long pointed to
by the address parameter
ARCH_SET_GS
Set the 64bit base for the FS register to addr.
ARCH_GET_GS
Return the 64bit base value for the GS register of
the current thread in the unsigned long pointed to
by the address parameter.
NOTES
arch_prctl is only supported on Linux/x86-64 for 64bit
programs currently.
The 64bit base changes when a new 32bit segment selector
is loaded.
ARCH_SET_GS is disabled in some kernels.
Context switches for 64bit segment bases are rather expen
sive. It may be a faster alternative to set a 32bit base
using a segment selector by setting up an LDT with mod
ify_ldt(2) or using the set_thread_area(2) system call in
a 2.5 kernel. arch_prctl is only needed when you want to
set bases that are larger than 4GB. Memory in the first
2GB of address space can be allocated by using mmap(2)
with the MAP_32BIT flag.
No prototype for arch_prctl in glibc 2.2. You have to
declare it yourself for now. This will be fixed in future
glibc versions.
FS may be already used by the threading library.
ERRORS
EINVAL code is not a valid subcommand.
EPERM addr is outside the process address space.
EFAULT addr points to an unmapped address or is outside
the process address space.
AUTHOR
Man page written by Andi Kleen.
CONFORMANCE
arch_prctl is a Linux/x86-64 extension and should not be
used in programs intended to be portable.
SEE ALSO
mmap(2), modify_ldt(2), prctl(2), set_thread_area(2)
AMD X86-64 Programmer's manual
Linux 2.4.20 2003-02-02 ARCH_PRCTL(2)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-02-07 22:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-07 22:37 syscall documentation (5 and last) Andries.Brouwer
-- strict thread matches above, loose matches on Subject: below --
2003-02-06 20:12 Andries.Brouwer
2003-02-07 22:30 ` Jamie Lokier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).