208 Commits

Author SHA1 Message Date
Warner Losh
302662db50 resource_query_string is dead. Kill it. 2003-11-05 04:36:13 +00:00
Bruce M Simpson
1aba005ab5 Add pmap_wired_count() and pmap_resident_count() to the pmap documentation.
Discussed with:	peter
2003-10-06 01:49:35 +00:00
Bruce M Simpson
cdf9f3771e Update the pmap(9) documentation to reflect the movement of pmap_prefault()
to the machine-independent VM layer, as per alc's recent commit.
Add a definition for the new pmap_is_prefaultable() helper function.
2003-10-04 01:30:01 +00:00
Bruce M Simpson
c753166c6a Add manual pages for the vm_map(9) part of the VM.
Reviewed by:	juli
Approved by:	jake (mentor)
2003-09-30 00:56:17 +00:00
Bruce M Simpson
7d216f0fa9 Add manual pages for the vm_map(9) part of the VM.
Reviewed by:    juli
Approved by:    jake (mentor)
2003-09-30 00:51:31 +00:00
Robert Watson
ef43d3b590 Documentation of kernel disk_create() and disk_destroy() APIs. These
APIs permit disk device drivers to register and deregister storage devices
for use by storage device consumers.  No doubt this API will change
more as time flies by, but this should be helpful to the creators of
new storage device drivers.

Reviewed by:	phk
2003-09-26 21:43:25 +00:00
Bruce M Simpson
2951193672 Fix MLINKS.
Noticed by:	bde
Pointy hat to:	bms
2003-09-25 23:44:15 +00:00
Bruce M Simpson
8019c643f1 Add manual page documentation for the machine-independent PMAP subsystem.
Include documentation of alc's new pmap_extract_and_hold() function.

Reviewed by:	hmp
Approved by:	jake (mentor)
2003-09-25 19:14:40 +00:00
Marcel Moolenaar
09d0a77ccd Hook up BUS_CONFIG_INTR.9 2003-09-24 05:18:41 +00:00
Hartmut Brandt
d7bbb21a9d Document uma_zone_set_max and its non-obvious behaviour.
Reviewed by:	bmilekic
2003-07-21 14:20:58 +00:00
Don Lewis
076c2f950a Document mutex pool API enhancements that allow creation and use of
multiple mutex pools.
2003-07-16 08:16:40 +00:00
Hartmut Brandt
7e9024cdd9 Add a facility for devices, specifically network interfaces, that require
large to huge amounts of small or medium sized receive buffers. The problem
with these situations is that they eat up the available DMA address space
very quickly when using mbufs or even mbuf clusters. Additionally this
facility provides a direct mapping between 32-bit integers and these buffers.
This is needed for devices originally designed for 32-bit systems. Ususally
the virtual address of the buffer is used as a handle to find the buffer as
soon as it is returned by the card. This does not work for 64-bit machines
and hence this mapping is needed.
2003-07-15 08:59:38 +00:00
Hiten Pandya
32c4d090ab Add MLINK for busdma(9) to bus_dma(9).
This resolves confusion for at least 10 people.

Suggested by:	Bruce M. Simpson <bms@spc.org>
Approved by:	des (mentor)
2003-06-17 19:50:59 +00:00
Hartmut Brandt
591f4054cb This is a driver for the physical layer chips used in ATM interfaces.
It currently supports the PMC Sierra Lite, Ultra and 622 chips and
the IDT 77105. The driver handles media options and state in a consistent
manner for ATM drivers. The next commit to the midway driver will make
it use utopia.
2003-06-12 14:28:32 +00:00
Hiten Pandya
33659d9aad Hook up pci(9) manual page to the build.
Approved by:	des (mentor)
2003-06-09 17:33:25 +00:00
Robert Watson
1792c88d10 Document VOP_LISTEXTATTR(9).
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2003-06-05 14:20:48 +00:00
Hiten Pandya
2450346579 Add the bus_dma(9) manual page to our section 9 collection. It
provides comprehensive documentation on FreeBSD's Bus DMA interface.

Approved by: gibbs, re@ (scottl)
Reviewed by: gibbs, scottl, des, sam, jake, tmm
2003-05-30 22:57:54 +00:00
Ruslan Ermilov
02531bb0b0 Link {be,le}{16,32,64}{enc,dec}.9 to byteorder.9.
Approved by:	re (blanket)
2003-05-21 17:37:22 +00:00
Hiten Pandya
5f616912b4 Document the ``resource management'' routines in rman(9).
Submitted by: Bruce M. Simpson <bms@spc.org>
Reviewed by: mdodd

Approved by: des (mentor), re (scottl)
2003-05-16 19:22:27 +00:00
Hiten Pandya
0d740fd5e8 Add a manual page for the CTASSERT(9) macro.
Approved by: des (mentor), re (scottl)
2003-05-16 15:24:07 +00:00
Hiten Pandya
03a0a09e98 Add missing MLINK for arc4rand(9). It is documented in
random(9) and referenced by gbde(4).

PR: docs/51254
Submitted by: Simon L. Nielsen <simon@nitro.dk>
Approved and Reviewed by: des (mentor), re (bmah)
2003-05-09 09:12:10 +00:00
Warner Losh
bf2331bae4 Document device_set_driver(9)
# now all driver_* functions used outside of subr_bus.o in my kernel
# are documented.
2003-04-22 03:43:44 +00:00
Warner Losh
6e684dce35 Document device_printf(9). 2003-04-22 03:32:31 +00:00
Warner Losh
c56c6bab42 Document device_set_ivars(9) as well. 2003-04-22 03:25:14 +00:00
Warner Losh
44d993e38a man page for device_get_parent. 2003-04-22 00:26:02 +00:00
Warner Losh
c82d43ff7a device_is_alive already was documented in device_get_state, so remove the
separate man page.  Document new device_is_attached there and remove that
new man page too.

Connect device_get_name to build, and install a link for
device_get_nameunit.

strangely nobody noticed this yet...
2003-04-22 00:21:28 +00:00
Warner Losh
41c44039c9 Simple man page for new device_is_attached. 2003-04-21 18:25:04 +00:00
Warner Losh
dd7520c9eb Add a man page for device_is_alive. 2003-04-21 18:24:05 +00:00
Warner Losh
d082b08904 Document what bus_set_resource(9) does. It is used by bus drivers to
bind resources that client drivers later access.
2003-03-30 00:25:23 +00:00
Kris Kennaway
6a897e3f7e Correct a typo in previous commit 2003-03-29 10:12:15 +00:00
Warner Losh
ec33f2d50f Add a new man page for bus_activate_resource and
bus_deactivate_resource.  It could use some improvement, and others
are welcomed to do so :-)
2003-03-29 05:16:15 +00:00
Warner Losh
9b89e63ce7 Create a man page for bus_child_present(9), a function to see if a
given device is considered accessible by its parent device bus driver
(or its parent, etc).
2003-03-28 07:09:17 +00:00
John Baldwin
7313b3d87e Remove obsolete at_fork() and at_exit() manpages. Curiously, at_exec()
didn't have a manpage.

Reminded by:	ru
2003-03-25 16:36:47 +00:00
Chris Costello
3ebc28efa8 Document the following MAC policies:
o Biba: A data integrity policy
o BSD Extended: Support for the firewall-like access controls (ugidfw(8))
o MLS: Multi-level security, a confidentiality policy

(These files originally lived in src/share/man/man9)

Approved by:	re (blanket)
Sponsored by:	DARPA, Network Associates Labs
Obtained from:	TrustedBSD Project
2002-12-05 00:05:38 +00:00
Chris Costello
431dda01b6 Document the MLS policy
Approved by:	re
Sponsored by:	DARPA, Network Associates Labs
Obtained from:	TrustedBSD Project
2002-12-02 01:04:37 +00:00
Chris Costello
2699228f1e Activate mac_biba.9
Approved by:	re
Sponsored by:	DARPA, Network Associates Labs
2002-11-20 22:28:20 +00:00
Robert Watson
64027e4d85 Add mac(9), a man page providing a basic introduction to the concepts
associated with the TrustedBSD MAC Framework, as well as some credits
to developers and contributors.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-21 23:51:18 +00:00
Chris Costello
6bc41f415a Add a new man page describing the mac_bsdextended policy.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-10-18 05:40:48 +00:00
Mike Barcroft
31cfc49a4e Remove the posix4(9) manual. It no longer contains relevant
information.
2002-10-16 14:24:41 +00:00
Sam Leffler
f4bf433552 manual pages for the new kernel crypto support (need work)
Obtained from:	openbsd
2002-10-04 20:43:30 +00:00
Julian Elischer
a4fd02efc7 link in the man page for thread_exit
Also change some line breaks.
2002-07-08 17:52:00 +00:00
Kenneth D. Merry
98cb733c67 At long last, commit the zero copy sockets code.
MAKEDEV:	Add MAKEDEV glue for the ti(4) device nodes.

ti.4:		Update the ti(4) man page to include information on the
		TI_JUMBO_HDRSPLIT and TI_PRIVATE_JUMBOS kernel options,
		and also include information about the new character
		device interface and the associated ioctls.

man9/Makefile:	Add jumbo.9 and zero_copy.9 man pages and associated
		links.

jumbo.9:	New man page describing the jumbo buffer allocator
		interface and operation.

zero_copy.9:	New man page describing the general characteristics of
		the zero copy send and receive code, and what an
		application author should do to take advantage of the
		zero copy functionality.

NOTES:		Add entries for ZERO_COPY_SOCKETS, TI_PRIVATE_JUMBOS,
		TI_JUMBO_HDRSPLIT, MSIZE, and MCLSHIFT.

conf/files:	Add uipc_jumbo.c and uipc_cow.c.

conf/options:	Add the 5 options mentioned above.

kern_subr.c:	Receive side zero copy implementation.  This takes
		"disposable" pages attached to an mbuf, gives them to
		a user process, and then recycles the user's page.
		This is only active when ZERO_COPY_SOCKETS is turned on
		and the kern.ipc.zero_copy.receive sysctl variable is
		set to 1.

uipc_cow.c:	Send side zero copy functions.  Takes a page written
		by the user and maps it copy on write and assigns it
		kernel virtual address space.  Removes copy on write
		mapping once the buffer has been freed by the network
		stack.

uipc_jumbo.c:	Jumbo disposable page allocator code.  This allocates
		(optionally) disposable pages for network drivers that
		want to give the user the option of doing zero copy
		receive.

uipc_socket.c:	Add kern.ipc.zero_copy.{send,receive} sysctls that are
		enabled if ZERO_COPY_SOCKETS is turned on.

		Add zero copy send support to sosend() -- pages get
		mapped into the kernel instead of getting copied if
		they meet size and alignment restrictions.

uipc_syscalls.c:Un-staticize some of the sf* functions so that they
		can be used elsewhere.  (uipc_cow.c)

if_media.c:	In the SIOCGIFMEDIA ioctl in ifmedia_ioctl(), avoid
		calling malloc() with M_WAITOK.  Return an error if
		the M_NOWAIT malloc fails.

		The ti(4) driver and the wi(4) driver, at least, call
		this with a mutex held.  This causes witness warnings
		for 'ifconfig -a' with a wi(4) or ti(4) board in the
		system.  (I've only verified for ti(4)).

ip_output.c:	Fragment large datagrams so that each segment contains
		a multiple of PAGE_SIZE amount of data plus headers.
		This allows the receiver to potentially do page
		flipping on receives.

if_ti.c:	Add zero copy receive support to the ti(4) driver.  If
		TI_PRIVATE_JUMBOS is not defined, it now uses the
		jumbo(9) buffer allocator for jumbo receive buffers.

		Add a new character device interface for the ti(4)
		driver for the new debugging interface.  This allows
		(a patched version of) gdb to talk to the Tigon board
		and debug the firmware.  There are also a few additional
		debugging ioctls available through this interface.

		Add header splitting support to the ti(4) driver.

		Tweak some of the default interrupt coalescing
		parameters to more useful defaults.

		Add hooks for supporting transmit flow control, but
		leave it turned off with a comment describing why it
		is turned off.

if_tireg.h:	Change the firmware rev to 12.4.11, since we're really
		at 12.4.11 plus fixes from 12.4.13.

		Add defines needed for debugging.

		Remove the ti_stats structure, it is now defined in
		sys/tiio.h.

ti_fw.h:	12.4.11 firmware.

ti_fw2.h:	12.4.11 firmware, plus selected fixes from 12.4.13,
		and my header splitting patches.  Revision 12.4.13
		doesn't handle 10/100 negotiation properly.  (This
		firmware is the same as what was in the tree previously,
		with the addition of header splitting support.)

sys/jumbo.h:	Jumbo buffer allocator interface.

sys/mbuf.h:	Add a new external mbuf type, EXT_DISPOSABLE, to
		indicate that the payload buffer can be thrown away /
		flipped to a userland process.

socketvar.h:	Add prototype for socow_setup.

tiio.h:		ioctl interface to the character portion of the ti(4)
		driver, plus associated structure/type definitions.

uio.h:		Change prototype for uiomoveco() so that we'll know
		whether the source page is disposable.

ufs_readwrite.c:Update for new prototype of uiomoveco().

vm_fault.c:	In vm_fault(), check to see whether we need to do a page
		based copy on write fault.

vm_object.c:	Add a new function, vm_object_allocate_wait().  This
		does the same thing that vm_object allocate does, except
		that it gives the caller the opportunity to specify whether
		it should wait on the uma_zalloc() of the object structre.

		This allows vm objects to be allocated while holding a
		mutex.  (Without generating WITNESS warnings.)

		vm_object_allocate() is implemented as a call to
		vm_object_allocate_wait() with the malloc flag set to
		M_WAITOK.

vm_object.h:	Add prototype for vm_object_allocate_wait().

vm_page.c:	Add page-based copy on write setup, clear and fault
		routines.

vm_page.h:	Add page based COW function prototypes and variable in
		the vm_page structure.

Many thanks to Drew Gallatin, who wrote the zero copy send and receive
code, and to all the other folks who have tested and reviewed this code
over the years.
2002-06-26 03:37:47 +00:00
Chad David
920a6f7e8f Add signal.9 and friends. 2002-06-10 03:01:36 +00:00
Jeroen Ruigrok van der Werven
382682b2a4 Add description for uma_zcreate().
Submitted by:	arr
2002-05-18 11:12:02 +00:00
Jeroen Ruigrok van der Werven
7c32182e06 Prefix the remaining functions with uma_ as is now the case in UMA. 2002-04-30 12:45:31 +00:00
Jeroen Ruigrok van der Werven
2f91527664 zinit() does not exist anymore. 2002-04-30 12:29:59 +00:00
Jeroen Ruigrok van der Werven
9daecfc462 Add a MLINKS to uma.9 from zone.9. 2002-04-30 09:41:25 +00:00
Jeroen Ruigrok van der Werven
268c1b9c75 Remove MLINKS to zinitna, it does not exist anymore. 2002-04-30 09:38:06 +00:00
Jeroen Ruigrok van der Werven
c25d2ac8cb Remove MLINKS to zbootinit. This has been gone for a while now. 2002-04-30 09:36:02 +00:00
Mike Barcroft
aabc5d3d44 Add links for bswap16.9, bswap32.9, and bswap64.9. 2002-04-29 17:04:23 +00:00