blob: 9f16c25ac05883eab960ce6acd369a4de46f8228 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
.\" $OpenBSD: vwakeup.9,v 1.2 2004/09/20 18:43:38 jaredy Exp $
.\" Written by Jared Yanovich
.\" This file belongs to the public domain.
.Dd September 17, 2004
.Dt VWAKEUP 9
.Os
.Sh NAME
.Nm vwakeup
.Nd "update outstanding I/O count and do wakeup on a vnode"
.Sh SYNOPSIS
.Fd #include <sys/param.h>
.Fd #include <sys/vnode.h>
.Ft void
.Fn vwakeup "struct vnode *vp"
.Sh DESCRIPTION
The
.Fn vwakeup
function updates the number of outstanding I/O operations on the target
vnode, stored in its
.Va v_numoutput
field.
If the target vnode has the
.Dv VBIOWAIT
flag set in its
.Va v_bioflag
field and has no outstanding I/O operations remaining, a
.Xr wakeup 9
is performed as well.
.Pp
The
.Fn vwakeup
function must be called at
.Xr splbio 9 .
.Sh SEE ALSO
.Xr panic 9 ,
.Xr splbio 9 ,
.Xr vnode 9 ,
.Xr vwaitforio 9 ,
.Xr wakeup 9
.Sh HISTORY
This document first appeared in
.Ox 3.7 .
.Sh CAVEATS
Calling
.Fn vwakeup
more times than the number of outstanding I/O operations will cause the
system to
.Xr panic 9 .
|