965 Commits

Author SHA1 Message Date
Bruce M Simpson
0734ae29f1 Update cross-references. 2003-10-06 01:50:37 +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
fdd1597b47 Use the term 'physical memory' consistently. 2003-10-05 11:47:51 +00:00
Bruce M Simpson
6bcda17f48 Update the page_req classes VM_ALLOC_NOOBJ and VM_ALLOC_ZERO.
Suggested by:	alc
2003-10-05 01:31:51 +00:00
Bruce M Simpson
b0b35125f0 Remove the pmap_prefault(9) page as it is no longer required. 2003-10-04 01:32:25 +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
Warner Losh
6e8666a5a8 Looks like I misread the callout code. We do not seem to hold the
callout lock while the callout is happening.  So the serialization
that I thought was happening isn't.  Therefore, remove the part of the
bugs that says this.  Leave in the other bug as it is very hard to
work around (impossible?).

Fix various typos.

Also note that timeout/untimeout are considered to be the old interface and
the callout interface should be used insetad.

Submitted by: bde (first two) and wollman (third)
2003-10-01 21:32:42 +00:00
Warner Losh
de78273e9c Document the implications of the callout_stop() returning 0 if the
callout has finished or is in progress.  Also document that the
locking of the callout code for FreeBSD 5 has eliminated the 'or is in
progress' clause as a possibility and that such elimination is an
accident of the implementation and shouldn't be relied upon.
2003-10-01 05:48:48 +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
274302ba7a Add a (somewhat verbose) manual page for vm_map(9).
Reviewed by:	juli
Approved by:	jake (mentor)
2003-09-30 00:54:06 +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
Garrett Wollman
43b5281bad Having had to spend several hours today figuring out just what it is that
VOP_GETPAGES() is supposed to do, share the results with everyone who isn't
Alan Cox.
2003-09-28 03:15:21 +00:00
Warner Losh
3c29b8c1c8 Two minor fixes:
o It is the /usr/include files, not the /usr include files.
o Document the practice of converting to the c99 standard uintXX_t
  form from the older, but non-standard, BSD-style u_intXX_t.  This
  has been going on in the tree for a while now, and I've heard other
  developers also state that this conversion is happening.  Note also
  that this is a slow process and should be treated like whitespace
  changes.
2003-09-27 22:17:37 +00:00
Robert Watson
5e50629b39 Additional information on the memory properties of struct disk
instances: the memory holding a struct disk should be pre-zeroed so
as to initialize any storage framework private data in the structures
properly.  In addition, the memory must be writable so that the
private data may be updated.

Pointed out by:	phk
2003-09-26 22:08:23 +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
Sam Leffler
89a688272a update to reflect new api
Submitted by:	Max Laier <max@love2party.net>
Obtained from:	NetBSD (with changes)
2003-09-25 20:49:28 +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
Marcel Moolenaar
4166dd7a7b Add a manpage for BUS_CONFIG_INTR.
Reminded by: eivind
2003-09-24 05:17:06 +00:00
Ruslan Ermilov
959d6c24f6 Get rid of duplicates. 2003-09-14 13:41:59 +00:00
Ruslan Ermilov
a1de21c12e mdoc(7): Fix common mistakes made in the SEE ALSO section. 2003-09-12 21:54:11 +00:00
Hiten Pandya
8fb2b56541 Remove double usage of performance, and combine it to one. 2003-09-12 19:20:05 +00:00
Ruslan Ermilov
743d5d518c mdoc(7): Properly mark C headers. 2003-09-10 19:24:35 +00:00
Ruslan Ermilov
fe08efe680 mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
Kenneth D. Merry
e0254f1068 Fix typo in the last commit.
Pointed out by:	njl
MFC after:	3 days
2003-09-03 05:35:37 +00:00
Kenneth D. Merry
cb32189e23 Move dynamic sysctl(8) variable creation for the cd(4) and da(4) drivers
out of cdregister() and daregister(), which are run from interrupt context.

The sysctl code does blocking mallocs (M_WAITOK), which causes problems
if malloc(9) actually needs to sleep.

The eventual fix for this issue will involve moving the CAM probe process
inside a kernel thread.  For now, though, I have fixed the issue by moving
dynamic sysctl variable creation for these two drivers to a task queue
running in a kernel thread.

The existing task queues (taskqueue_swi and taskqueue_swi_giant) run in
software interrupt handlers, which wouldn't fix the problem at hand.  So I
have created a new task queue, taskqueue_thread, that runs inside a kernel
thread.  (It also runs outside of Giant -- clients must explicitly acquire
and release Giant in their taskqueue functions.)

scsi_cd.c:	Remove sysctl variable creation code from cdregister(), and
		move it to a new function, cdsysctlinit().  Queue
		cdsysctlinit() to the taskqueue_thread taskqueue once we
		have fully registered the cd(4) driver instance.

scsi_da.c:	Remove sysctl variable creation code from daregister(), and
		move it to move it to a new function, dasysctlinit().
		Queue dasysctlinit() to the taskqueue_thread taskqueue once
		we have fully registered the da(4) instance.

taskqueue.h:	Declare the new taskqueue_thread taskqueue, update some
		comments.

subr_taskqueue.c:
		Create the new kernel thread taskqueue.  This taskqueue
		runs outside of Giant, so any functions queued to it would
		need to explicitly acquire/release Giant if they need it.

cd.4:		Update the cd(4) man page to talk about the minimum command
		size sysctl/loader tunable.  Also note that the changer
		variables are available as loader tunables as well.

da.4:		Update the da(4) man page to cover the retry_count,
		default_timeout and minimum_cmd_size sysctl variables/loader
		tunables.  Remove references to /dev/r???, they aren't used
		any longer.

cd.9:		Update the cd(9) man page to describe the CD_Q_10_BYTE_ONLY
		quirk.

taskqueue.9:	Update the taskqueue(9) man page to describe the new thread
		task queue, and the taskqueue_swi_giant queue.

MFC after:	3 days
2003-09-03 04:46:28 +00:00
Maxime Henrion
82d227dc2a Document the new BUS_DMA_ZERO flag. 2003-07-27 14:05:29 +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
a05a3d4320 Fix a typo. 2003-07-16 08:22:47 +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
Hartmut Brandt
84853c9648 Document the PHY chip statistics. 2003-07-14 15:08:11 +00:00
Scott Long
9b5c4b6694 Update the rest of the busdma man page for the change in bus_dma_tag_create() 2003-07-03 09:07:03 +00:00
Scott Long
0e5f9b7d5b Update the busdma manpage to reflect the recent API change to
bus_dma_tag_create.
2003-07-03 08:32:42 +00:00
John-Mark Gurney
094dc7e3b9 move maxsegsz down a bit so that the arg definition order matches the
calling order.
2003-06-30 20:20:51 +00:00
Maxime Henrion
095ee947fb Backout part of my previous commit dealing with bus_dmasync_op_t
documentation since people think it was better the way it was before.

Requested by:	gibbs (some time ago)
2003-06-25 13:15:51 +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
Yaroslav Tykhiy
5d96084f89 Name a function argument "mbuf", not "buf", if it is
a pointer to struct mbuf for clarity and consistency.
2003-06-15 14:47:12 +00:00
Yaroslav Tykhiy
da72b9983c Add missing descriptions of macros M_ALIGN and MH_ALIGN.
Remove a reference to the defunct macro M_COPY_PKTHDR;
document the new functions m_dup_pkthdr() and m_move_pkthdr(),
and the macro variant of the latter, M_MOVE_PKTHDR().
2003-06-15 14:40:03 +00:00
Yaroslav Tykhiy
7b2fd1831f Add more markup to the mbuf(9) manpage. This includes:
- tagging plaintext "mbuf", "mbuf cluster", and "mbuf chain"
  with .Vt (variable type) since all of them are ways of managing
  data, i.e., they can be seen as data types;

- using .Vt/.Va instead of .Li (literal) where appropriate;

- tagging plaintext words that actually refer to function arguments
  with .Fa.

Suggested by:	ru
2003-06-15 14:14:11 +00:00
Yaroslav Tykhiy
be82a0bc5a Use .Va, not .Fa, to refer to structure members.
mdoc(7) contains an ambiguous statement on the issue,
but our mdoc(7) police's opinion is solid.

Suggested by:	ru
2003-06-15 12:42:41 +00:00
Maxime Henrion
b9b855dd65 - Document the fact that you can specify several DMA operations to
bus_dmamap_sync() by OR'ing them together.
- Don't document what BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE and
  BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE is supposed to do when
  passed to bus_dmamap_sync().  There are other possible combinations
  and the reader just needs to know what the individual flags do and
  that he can combine different DMA operations.
- Use .An when listing authors.

Reviewed by:	hmp
2003-06-13 20:07:49 +00:00
Hiten Pandya
97a30ee292 Remove paragraph which describes how we might switch our packet queueing
discipline to Random Early Detection (RED) in the future.  The same para
incorrectly spelt ``Random Early Detection'' as ``Random Early Drop''.

While I am there, nuke IF_ENQ_DROP from the list of functions.  More
work will be done on this, since some of the functions like
if_enq_drop() and if_queue_drop() were replaced with one function
called if_handoff() that does the job of enqueing the packet and
updating interface statistics as necessary.

Reviewed by:		wollman
Approved by:		des (mentor)
MFC after:		1 day
2003-06-12 21:33:00 +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
Hartmut Brandt
33f73ee488 Document the fact that one is allowed to sleep while holding an sx lock.
Discussed with: jhb@
2003-06-12 09:06:25 +00:00
Hartmut Brandt
eb74baf398 Rename the section 'locking considerations' into 'context'.
Change the wording in this section to get rid of references to mutexes
and talk about sleeping instead.

Discussed with: jhb@, ru@
2003-06-12 09:03:15 +00:00
Sheldon Hearn
7c2c06f2cd Add cross-references to pci(4) and pciconf(8). 2003-06-10 09:20:04 +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
Hiten Pandya
aac0aafa05 Bring in a manual page documenting some important functions of the
PCI bus interface.  I have made some modifications to this manual
page, so it looks a bit different from the original version that
was posted to me.

Submitted by:		Bruce M. Simpson <bms@spc.org>
Reviewed by:		imp, mdodd (early copy)
Approved by:		des (mentor)

MFC after:		3 days
2003-06-09 17:32:41 +00:00