OpenBSD-4.6/share/man/man9/vwakeup.9

.\"	$OpenBSD: vwakeup.9,v 1.3 2007/05/31 19:20:01 jmc Exp $
.\" Written by Jared Yanovich
.\" This file belongs to the public domain.
.Dd $Mdocdate: May 31 2007 $
.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 .