Commit Graph

6636 Commits

Author SHA1 Message Date
Maxim Konovalov
8ad9c32345 o Document vdropl(9) [1].
o Add an MLINK for vdropl().

Reviewed by:	des [1]
Obtained from:	wording from vgone(9)
2007-04-01 09:48:59 +00:00
John Baldwin
4e7f640dfb Optimize sx locks to use simple atomic operations for the common cases of
obtaining and releasing shared and exclusive locks.  The algorithms for
manipulating the lock cookie are very similar to that rwlocks.  This patch
also adds support for exclusive locks using the same algorithm as mutexes.

A new sx_init_flags() function has been added so that optional flags can be
specified to alter a given locks behavior.  The flags include SX_DUPOK,
SX_NOWITNESS, SX_NOPROFILE, and SX_QUITE which are all identical in nature
to the similar flags for mutexes.

Adaptive spinning on select locks may be enabled by enabling the
ADAPTIVE_SX kernel option.  Only locks initialized with the SX_ADAPTIVESPIN
flag via sx_init_flags() will adaptively spin.

The common cases for sx_slock(), sx_sunlock(), sx_xlock(), and sx_xunlock()
are now performed inline in non-debug kernels.  As a result, <sys/sx.h> now
requires <sys/lock.h> to be included prior to <sys/sx.h>.

The new kernel option SX_NOINLINE can be used to disable the aforementioned
inlining in non-debug kernels.

The size of struct sx has changed, so the kernel ABI is probably greatly
disturbed.

MFC after:	1 month
Submitted by:	attilio
Tested by:	kris, pjd
2007-03-31 23:23:42 +00:00
Takanori Watanabe
604a7426cc New line for new sentense.
Pointed out by: brueffer
2007-03-30 21:59:55 +00:00
Takanori Watanabe
3db4056dc5 Hook acpi_aiboost man page and modify the man page a bit. 2007-03-30 21:19:10 +00:00
Takanori Watanabe
55407bcb97 Add man page for acpi_aiboost. Based on man page for NetBSD. 2007-03-30 20:35:37 +00:00
Julian Elischer
a280550abf Add some cross references to locking.9 from related pages. 2007-03-30 18:07:26 +00:00
Julian Elischer
27c20cc4b8 Connect the locking man page to the build.
Next step is to add it as a "See Also" to related man pages.
2007-03-30 17:56:19 +00:00
Warner Losh
e4adaf642c Document that EPERM is returned when the calling thread does not have
the mutex locked.  Also tweak the wording to make it more consistant
between pthread_cond_wait and pthread_cond_tiedwait.

Confirmed with the opengroup's web site that this is a valid return
value.  Wording used specifically not that of opengroup's online man
pages.

MFC After: 1 week
2007-03-30 04:10:04 +00:00
Dag-Erling Smørgrav
8f91a6f900 Add missing El.
MFC after:	1 week
2007-03-29 10:11:22 +00:00
Christian Brueffer
ffdb86fe9a New sentence -> new line 2007-03-28 21:21:22 +00:00
Maxim Konovalov
1f43095400 o Trim unneeded backslash. 2007-03-28 04:43:55 +00:00
Maxim Konovalov
dd3c9f51e5 o Actually add MLINKs for priv(9) functions. 2007-03-28 04:41:50 +00:00
Nick Hibma
36eab02467 Clarify the definition of the watchdog kernel interface by moving a sentence up
to the sentence it references.
2007-03-27 21:23:20 +00:00
Christian Brueffer
09dfbddbda Add MLINKs for priv(9) functions. 2007-03-27 21:20:57 +00:00
Yaroslav Tykhiy
63518eccca Introduce a new toy interface, edsc(4). It's a discard interface
imitating an Ethernet device, so vlan(4) and if_bridge(4) can be
attached to it for testing and benchmarking purposes.  Its source
can be an introduction to the anatomy of a network interface driver
due to its simplicity as well as to a bunch of comments in it.
2007-03-26 04:39:18 +00:00
Maxim Konovalov
5405bc9f50 o While the script is correct and works well in sh(1) make it
works in tcsh(1) which does not support <<- redirection.

PR:		docs/110097
Submitted by:	Sameh Ghane
2007-03-24 01:39:24 +00:00
John Baldwin
8f27b08e87 Rename the cv_*wait*() functions to _cv_*wait*() and change their second
argument from a mutex to a lock_object.  Add cv_*wait*() wrapper macros
that accept either a mutex, rwlock, or sx lock as the second argument and
convert it to a lock_object and then call _cv_*wait*().  Basically, the
visible difference is that you can now use rwlocks and sx locks with
condition variables using the same API as with mutexes.
2007-03-21 22:22:13 +00:00
Bruce M Simpson
c53fb74f0e Document net.link.tap.up_on_open.
PR:		110383
Submitted by:	Frank Behrens
MFC after:	2 weeks
2007-03-19 18:27:00 +00:00
Xin LI
46d98f5737 - Remove an unneeded comma
- Remove a redundant .Xc
 - Spell "Largely" as it should.
2007-03-19 07:49:11 +00:00
Julian Elischer
4ff78a9ca8 More corrections, this time from Wojciech Koszek 2007-03-18 19:28:44 +00:00
Julian Elischer
53882c7c96 Spelling and whitespace fixes from Dunne Whitty 2007-03-18 18:57:38 +00:00
Bruce M Simpson
eea554b742 Point out that PIM is the way to go.
MFC after:	3 days
2007-03-18 15:34:57 +00:00
Bruce M Simpson
04bcf5a9be Document a major IGMP related annoyance.
Add comments about IGMP bits which will go when we take SSM.
Xref multicast(4).

MFC after:	3 days
2007-03-18 15:31:06 +00:00
Nate Lawson
d7029f5e85 Explain more about the "C" qualifier for Celsius.
MFC after:	3 days
2007-03-18 00:57:07 +00:00
Bruce A. Mah
81be5d6d94 Remove an extra "The".
MFC after:	3 days
2007-03-16 16:07:49 +00:00
Christian Brueffer
8d5162b9da Add missing @ 2007-03-15 16:12:08 +00:00
Hidetoshi Shimokawa
8fce93d0ca Add a description about hw.firewire.hold_count.
MFC: after 3 days
PR: kern/93083
2007-03-15 14:44:03 +00:00
Christian Brueffer
b46a157df0 Mention the first RELENG_6 release to include this driver.
MFC after:	3 days
2007-03-15 13:08:50 +00:00
Christian Brueffer
2bf274778d Fix markup and reword a sentence to actually make sense. 2007-03-14 20:09:23 +00:00
Julian Elischer
626d3f9f41 fix braino in markup. 2007-03-14 17:33:16 +00:00
Bruce M Simpson
5e018b11ee Remove obsolete polling members from documentation for struct ifnet.
Submitted by:	Aniruddha Bohra
MFC after:	5 days
2007-03-14 13:19:50 +00:00
Christian Brueffer
c4bbe0e7f4 Add missing punctuation. 2007-03-14 08:03:20 +00:00
Kip Macy
1d7ee7e515 fix wording blunder 2007-03-14 07:49:45 +00:00
Christian Brueffer
32a0d5b100 Various fixes, also the driver can be compiled into the kernel now. 2007-03-14 07:46:57 +00:00
Julian Elischer
c2c54c3d82 More suggestions from pjd. 2007-03-14 06:27:02 +00:00
Julian Elischer
34e1b9e5f0 Some comments from pjd 2007-03-14 06:12:36 +00:00
Kip Macy
51a232a0b5 Add man page for cxgb 2007-03-14 05:12:25 +00:00
Julian Elischer
0929bf8e57 Add locking.9
This is supposed to be a brief overview of the locking primatives.
It is not yet complete and contains many place-holders for information
I do not know.

The locking is getting so diverse that I've lost track of it all.
We need this page to keep outselves in sync with what the primitives do.

note.. not part of the build yet.
2007-03-14 04:00:24 +00:00
Greg Lehey
6238e679b7 Typo. 2007-03-13 03:56:16 +00:00
Christian Brueffer
cc249a3fce my(4) doesn't need miibus(4).
Approved by:	rwatson (mentor)
Obtained from:	DragonFly
MFC after:	1 week
2007-03-11 15:20:04 +00:00
Brooks Davis
8165fa2149 Spell .Xr without a '/'.
Pointy hat:	brooks
2007-03-11 10:48:34 +00:00
Brooks Davis
ce475c411b Fix a couple markup problems in the previous commit and bump the
document date.

Reported by:	ru
2007-03-11 10:24:37 +00:00
Brooks Davis
0b45d130bf Allow background_fsck_delay to be set to a negative value which delays
the background fsck indefinitely.  This allows the administrator to run
it at a convenient time.  To support running it from cron, the
forcestart argument now causes the fsck to start with no delay and all
output to be suppressed.
2007-03-11 06:53:07 +00:00
Christian Brueffer
199dc74d04 Document Silicon Image SiI 3124 and SiI 3132 support. 2007-03-10 12:44:22 +00:00
John Baldwin
e7573e7ad7 Allow threads to atomically release rw and sx locks while waiting for an
event.  Locking primitives that support this (mtx, rw, and sx) now each
include their own foo_sleep() routine.
- Rename msleep() to _sleep() and change it's 'struct mtx' object to a
  'struct lock_object' pointer.  _sleep() uses the recently added
  lc_unlock() and lc_lock() function pointers for the lock class of the
  specified lock to release the lock while the thread is suspended.
- Add wrappers around _sleep() for mutexes (mtx_sleep()), rw locks
  (rw_sleep()), and sx locks (sx_sleep()).  msleep() still exists and
  is now identical to mtx_sleep(), but it is deprecated.
- Rename SLEEPQ_MSLEEP to SLEEPQ_SLEEP.
- Rewrite much of sleep.9 to not be msleep(9) centric.
- Flesh out the 'RETURN VALUES' section in sleep.9 and add an 'ERRORS'
  section.
- Add __nonnull(1) to _sleep() and msleep_spin() so that the compiler will
  warn if you try to pass a NULL wait channel.  The functions already have
  a KASSERT to that effect.
2007-03-09 22:41:01 +00:00
John Baldwin
32d2c58bd6 Document SLEEPQ_PAUSE. 2007-03-09 18:06:36 +00:00
John Baldwin
0a1d8ac624 Oof, it is not my day. Unswap the descriptions of EINTR and ERESTART. 2007-03-09 17:56:05 +00:00
John Baldwin
196baa968a Fix a typo in the last that claimed that only masked signals were caught. 2007-03-09 17:53:16 +00:00
John Baldwin
f499e49c46 Correct descriptions of EINTR and ERESTART errors. Masked signals don't
interrupt sleeps.  Rather, unmasked signals interrupt restarts and can
either interrupt the system call by having it return EINTR in userland or
force the system call to be restarted.
2007-03-09 17:52:10 +00:00
John Baldwin
e6b69890ed - Document cv_wait_unlock(9).
- Don't claim that the mutex is atomically reacquired when a cv_wait
  routine returns.  There's nothing atomic or magical about the lock
  reacquire.  The only magic is that we atomically drop the lock by
  placing the thread on the sleep queue before dropping the lock.
2007-03-09 16:59:27 +00:00