aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2009-12-17 18:43:34 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2009-12-17 18:43:34 +0000
commit2709ebf1a5d40596d3d16a52b4aaa0b6c99a330c (patch)
tree00de6a741f0c5b11d4bacc7037194e21fb69ab88
parent83fe91c2f03b9ad8440f2b94cc677a7e0583c310 (diff)
Notes
-rw-r--r--share/man/man9/sleep.914
-rw-r--r--share/man/man9/sleepqueue.911
2 files changed, 22 insertions, 3 deletions
diff --git a/share/man/man9/sleep.9 b/share/man/man9/sleep.9
index a9f087351510..8fb7f88a3200 100644
--- a/share/man/man9/sleep.9
+++ b/share/man/man9/sleep.9
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 4, 2008
+.Dd December 12, 2009
.Os
.Dt SLEEP 9
.Sh NAME
@@ -97,6 +97,7 @@ when it resumes.
should never be used, as it is for compatibility only.
A new priority of 0 means to use the thread's current priority when
it is made runnable again.
+.Pp
If
.Fa priority
includes the
@@ -113,6 +114,17 @@ possible, and
is returned if the system call should be interrupted by the signal
(return
.Er EINTR ) .
+If
+.Dv PBDRY
+flag is specified in addition to
+.Dv PCATCH ,
+then the sleeping thread is not stopped while sleeping upon delivery of
+.Dv SIGSTOP
+or other stop action.
+Instead, it is waken up, assuming that stop occurs on reaching a stop
+point when returning to usermode.
+The flag should be used when sleeping thread owns resources, for instance
+vnode locks, that should be freed timely.
.Pp
The parameter
.Fa wmesg
diff --git a/share/man/man9/sleepqueue.9 b/share/man/man9/sleepqueue.9
index e2e3a4b41501..144bdc0706e4 100644
--- a/share/man/man9/sleepqueue.9
+++ b/share/man/man9/sleepqueue.9
@@ -23,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd August 13, 2007
+.Dd December 12, 2009
.Dt SLEEPQUEUE 9
.Os
.Sh NAME
@@ -195,12 +195,19 @@ A sleep queue used to implement
.Xr pause 9 .
.El
.Pp
-There is currently only one optional flag:
+There are currently two optional flag:
.Pp
.Bl -tag -width ".Dv SLEEPQ_INTERRUPTIBLE" -compact
.It Dv SLEEPQ_INTERRUPTIBLE
The current thread is entering an interruptible sleep.
.El
+.Bl -tag -width ".Dv SLEEPQ_STOP_ON_BDRY" -compact
+.It Dv SLEEPQ_STOP_ON_BDRY
+When thread is entering an interruptible sleep, do not stop it upon
+arrival of stop action, like
+.Dv SIGSTOP .
+Wake it up instead.
+.El
.Pp
A timeout on the sleep may be specified by calling
.Fn sleepq_set_timeout