posix_fadvise.2: Document the architecture-specific arm_fadvise64_64() system call

This ARM-specific system call fixes the argument ordering
for that architecture. Since Linux 2.6.14.

Reported-by: Stephan Mueller <stephan.mueller@atsec.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Michael Kerrisk 2010-10-09 06:50:38 +02:00
parent e049eee85f
commit dc30fdc64e
1 changed files with 25 additions and 0 deletions

View File

@ -22,6 +22,7 @@
.\" the source, must acknowledge the copyright and authors of this work. .\" the source, must acknowledge the copyright and authors of this work.
.\" .\"
.\" 2005-04-08 mtk, noted kernel version and added BUGS .\" 2005-04-08 mtk, noted kernel version and added BUGS
.\" 2010-10-09, mtk, document arm_fadvise64_64()
.\" .\"
.TH POSIX_FADVISE 2 2010-10-09 "Linux" "Linux Programmer's Manual" .TH POSIX_FADVISE 2 2010-10-09 "Linux" "Linux Programmer's Manual"
.SH NAME .SH NAME
@ -148,6 +149,30 @@ call
or or
.BR fdatasync (2) .BR fdatasync (2)
first. first.
.SS arm_fadvise()
The ARM architecture
needs 64-bit arguments to be aligned in a suitable pair of registers.
On this architecture, the call signature of
.BR posix_fadvise ()
is flawed, since it forces a register to be wasted as padding between the
.I fd
and
.I len
arguments.
Therefore, since Linux 2.6.14, ARM defines a different
system call that orders the arguments suitably:
.PP
.in +4n
.nf
.BI "long arm_fadvise64_64(int " fd ", int " advice ,
.BI " loff_t " offset ", loff_t " len );
.fi
.in
.PP
The behavior of this system call is otherwise exactly the same as
.BR posix_fadvise().
No library support is provided for this system call in glibc.
.\" No ARM support in glibc.
.SH BUGS .SH BUGS
In kernels before 2.6.6, if In kernels before 2.6.6, if
.I len .I len