summaryrefslogtreecommitdiffstats
path: root/lib/libc/sys/mmap.2
diff options
context:
space:
mode:
authormpp <mpp@FreeBSD.org>1997-03-21 20:57:20 +0000
committermpp <mpp@FreeBSD.org>1997-03-21 20:57:20 +0000
commit739a0bf67664914603367bd0db088b1edc7119dc (patch)
tree2c0eab9741d02b8e38426408ddffc7186c4f12b0 /lib/libc/sys/mmap.2
parent8eaf2deaa2812ed3ea9fdea3f6b64f3d86d565f8 (diff)
downloadFreeBSD-src-739a0bf67664914603367bd0db088b1edc7119dc.zip
FreeBSD-src-739a0bf67664914603367bd0db088b1edc7119dc.tar.gz
Use the .Tn macro for generic FreeBSD references. Other minor cleanup.
Diffstat (limited to 'lib/libc/sys/mmap.2')
-rw-r--r--lib/libc/sys/mmap.219
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/libc/sys/mmap.2 b/lib/libc/sys/mmap.2
index 1e8109d..c5d18e2 100644
--- a/lib/libc/sys/mmap.2
+++ b/lib/libc/sys/mmap.2
@@ -216,21 +216,26 @@ was specified and insufficient memory was available.
.Xr munlock 2 ,
.Xr munmap 2 ,
.Xr getpagesize 3
-
.Sh BUGS
.Ar len
is limited to 2GB. Mmapping slightly more than 2GB doesn't work, but
it is possible to map a window of size (filesize % 2GB) for file sizes
of slightly less than 2G, 4GB, 6GB and 8GB.
-
+.Pp
The limit is imposed for a variety of reasons. Most of them have to do
-with FreeBSD not wanting to use 64 bit offsets in the VM system due to
-the extreme performance penalty. So FreeBSD uses 32bit page indexes and
-this gives FreeBSD a maximum of 8TB filesizes. It's actually bugs in
+with
+.Tn FreeBSD
+not wanting to use 64 bit offsets in the VM system due to
+the extreme performance penalty. So
+.Tn FreeBSD
+uses 32bit page indexes and
+this gives
+.Tn FreeBSD
+a maximum of 8TB filesizes. It's actually bugs in
the filesystem code that causes the limit to be further restricted to
1TB (loss of precision when doing blockno calculations).
-
+.Pp
Another reason for the 2GB limit is that filesystem metadata can
reside at negative offsets.
-
+.Pp
We currently can only deal with page aligned file offsets.
OpenPOWER on IntegriCloud