diff --git a/man2/mmap2.2 b/man2/mmap2.2 index 74a54355d..0f302ed3c 100644 --- a/man2/mmap2.2 +++ b/man2/mmap2.2 @@ -26,7 +26,7 @@ .\" Added description of mmap2 .\" Modified, 2004-11-25, mtk -- removed stray #endif in prototype .\" -.TH MMAP2 2 2007-06-01 "Linux" "Linux Programmer's Manual" +.TH MMAP2 2 2007-07-08 "Linux" "Linux Programmer's Manual" .SH NAME mmap2 \- map files or devices into memory .SH SYNOPSIS @@ -42,38 +42,46 @@ The system call operates in exactly the same way as .BR mmap (2), except that the final argument specifies the offset into the -file in units of the system page size (instead of bytes). +file in 4096-byte units (instead of bytes, as is done by +.BR mmap (2)). This enables applications that use a 32-bit .I off_t -to map -larger files (typically up to 2^44 bytes). +to map large files (up to 2^44 bytes). .SH "RETURN VALUE" On success, .BR mmap2 () returns a pointer to the mapped area. -On error \-1 is returned -and +On error \-1 is returned and .I errno is set appropriately. .SH ERRORS .TP .B EFAULT -Problem with getting the -data from userspace. +Problem with getting the data from userspace. +.TP +.B EINVAL +(Various platforms where the page size is not 4096 bytes.) +.I offset * 4096 +is not a multiple of the system page size. +.PP +.BR mmap2 () +can return any of the same errors as +.BR mmap (2). +.SH VERSIONS +.BR mmap2 () +is available since Linux 2.3.31. .SH "CONFORMING TO" This system call is Linux specific. .SH NOTES -Glibc does not provide a wrapper for this system call; call it using -.BR syscall (2). +Nowadays, the glibc +.BR mmap () +wrapper function invokes this system call rather than the +.BR mmap (2) +system call. -.BR mmap2 () -is available since Linux 2.3.31. -It is Linux specific, and should be avoided in portable applications. -On 32-bit systems, -.BR mmap2 () -is used to implement the -.BR mmap64 () -function that is part of the LFS (Large File Summit). +On ia64, the unit for +.I offset +is actually the system page size, rather than 4096 bytes. .SH "SEE ALSO" .BR getpagesize (2), .BR mmap (2),