summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2004-12-06 04:24:17 +0000
committeralc <alc@FreeBSD.org>2004-12-06 04:24:17 +0000
commit7563fb5dcbc3d6ae3e08f07c78f8efb2f31d201a (patch)
tree4425630f24cdf6a3e242e3146ef71f05002baff5
parentb3a3af726dd74a8816b909bcf2cc0d6c2a9ebd4e (diff)
downloadFreeBSD-src-7563fb5dcbc3d6ae3e08f07c78f8efb2f31d201a.zip
FreeBSD-src-7563fb5dcbc3d6ae3e08f07c78f8efb2f31d201a.tar.gz
This jumbo allocator has been removed from the kernel.
-rw-r--r--share/man/man9/Makefile7
-rw-r--r--share/man/man9/jumbo.9151
-rw-r--r--share/man/man9/zero_copy.95
3 files changed, 2 insertions, 161 deletions
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index e86002b..ff64882 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -118,7 +118,6 @@ MAN= accept_filter.9 \
inittodr.9 \
intro.9 \
ithread.9 \
- jumbo.9 \
KASSERT.9 \
kernacc.9 \
kobj.9 \
@@ -535,12 +534,6 @@ MLINKS+=ithread.9 ithread_add_handler.9 \
ithread.9 ithread_priority.9 \
ithread.9 ithread_remove_handler.9 \
ithread.9 ithread_schedule.9
-MLINKS+=jumbo.9 jumbo_freem.9 \
- jumbo.9 jumbo_pg_alloc.9 \
- jumbo.9 jumbo_pg_free.9 \
- jumbo.9 jumbo_pg_steal.9 \
- jumbo.9 jumbo_phys_to_kva.9 \
- jumbo.9 jumbo_vm_init.9
MLINKS+=kernacc.9 useracc.9
MLINKS+=kobj.9 DEFINE_CLASS.9 \
kobj.9 kobj_class_compile.9 \
diff --git a/share/man/man9/jumbo.9 b/share/man/man9/jumbo.9
deleted file mode 100644
index 6670789..0000000
--- a/share/man/man9/jumbo.9
+++ /dev/null
@@ -1,151 +0,0 @@
-.\"
-.\" Copyright (c) 2002 Kenneth D. Merry.
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions, and the following disclaimer,
-.\" without modification, immediately at the beginning of the file.
-.\" 2. The name of the author may not be used to endorse or promote products
-.\" derived from this software without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
-.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd June 23, 2002
-.Dt JUMBO 9
-.Os
-.Sh NAME
-.Nm jumbo ,
-.Nm jumbo_vm_init ,
-.Nm jumbo_pg_alloc ,
-.Nm jumbo_pg_free ,
-.Nm jumbo_freem ,
-.Nm jumbo_pg_steal ,
-.Nm jumbo_phys_to_kva
-.Nd kernel interface for allocating and freeing page-sized disposable buffers
-.Sh SYNOPSIS
-.In sys/jumbo.h
-.Ft int
-.Fn jumbo_vm_init void
-.Ft vm_page_t
-.Fn jumbo_pg_alloc void
-.Ft void
-.Fn jumbo_pg_free "vm_offset_t addr"
-.Ft void
-.Fn jumbo_freem "caddr_t addr" "void *args"
-.Ft void
-.Fn jumbo_pg_steal "vm_page_t pg"
-.Ft caddr_t
-.Fn jumbo_phys_to_kva "vm_offset_t pa"
-.Sh DESCRIPTION
-The
-.Nm
-buffer facility is designed for allocating disposable page-sized
-buffers.
-Buffers allocated via this facility can either be returned or not.
-This facility is primarily intended for use with network adapters
-that have MTUs of a page or greater size.
-The buffers will normally be disposed of by the
-.Xr zero_copy 9
-receive code.
-.Pp
-.Fn jumbo_vm_init
-initializes the pool of KVA the
-.Nm
-code needs to operate and does some
-other initialization to prepare the subsystem for operation.
-This routine only needs to be called once.
-Calling it multiple times will have no effect.
-It is recommended that this initialization routine be called in a
-device driver attach routine, so that resources are not allocated if the
-.Nm
-subsystem will not end up being used.
-.Fn jumbo_vm_init
-returns 1 upon successful completion, and 0 upon failure.
-.Pp
-.Fn jumbo_pg_alloc
-allocates a physical page and assigns a piece of KVA from the
-.Nm
-KVA pool.
-It returns the allocated page if successful, and
-.Dv NULL
-in the case of failure.
-.Pp
-.Fn jumbo_pg_free
-frees a page allocated by
-.Fn jumbo_pg_alloc .
-It takes the address of the memory in question as an argument.
-This routine will normally be used in cases where the allocated
-.Nm
-page cannot be used for some reason.
-The normal free path is via
-.Fn jumbo_freem .
-.Pp
-.Fn jumbo_freem
-is the routine that should be given as the external free routine when an
-external
-.Vt mbuf
-is allocated using pages from the
-.Nm
-allocator.
-It takes the virtual address of the page in question, and
-ignores the second argument.
-.Pp
-.Fn jumbo_pg_steal
-.Dq steals
-a page and recycles its KVA space.
-.Pp
-.Fn jumbo_phys_to_kva
-translates the physical address of a
-.Nm
-allocated page to the proper kernel virtual address.
-.Sh SEE ALSO
-.Xr ti 4 ,
-.Xr zero_copy 9
-.Sh HISTORY
-The
-.Nm
-allocator is primarily based on a page allocator system originally written
-by
-.An Andrew Gallatin Aq gallatin@FreeBSD.org
-as part of a set of zero copy patches for the
-.Xr ti 4
-driver.
-The allocator was taken out of the
-.Xr ti 4
-driver, cleaned up and ported to the new
-.Xr mutex 9
-interface by
-.An Kenneth Merry Aq ken@FreeBSD.org .
-.Pp
-The
-.Nm
-allocator first appeared in
-.Fx 5.0 ,
-and has existed in patch form since at least 1999.
-.Sh AUTHORS
-.An Andrew Gallatin Aq gallatin@FreeBSD.org
-.An Kenneth Merry Aq ken@FreeBSD.org
-.Sh BUGS
-There is currently a static number of KVA pages allocated by the
-.Nm
-allocator, with no real provision for increasing the number of pages
-allocated should demand exceed supply.
-.Pp
-The
-.Fn jumbo_pg_steal
-function is not currently used anywhere.
diff --git a/share/man/man9/zero_copy.9 b/share/man/man9/zero_copy.9
index e1e4931..da58f99 100644
--- a/share/man/man9/zero_copy.9
+++ b/share/man/man9/zero_copy.9
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd June 23, 2002
+.Dd December 5, 2004
.Dt ZERO_COPY 9
.Os
.Sh NAME
@@ -155,8 +155,7 @@ variables respectively.
.Sh SEE ALSO
.Xr sendfile 2 ,
.Xr socket 2 ,
-.Xr ti 4 ,
-.Xr jumbo 9
+.Xr ti 4
.Sh HISTORY
The zero copy sockets code first appeared in
.Fx 5.0 ,
OpenPOWER on IntegriCloud