vinvalbuf man page on OpenBSD

Man page or keyword search:  
man Server   11362 pages
apropos Keyword Search (all sections)
Output format
OpenBSD logo
[printable version]

VINVALBUF(9)		     OpenBSD Kernel Manual		  VINVALBUF(9)

NAME
     vinvalbuf - flush and invalidate all buffers associated with a vnode

SYNOPSIS
     #include <sys/param.h>
     #include <sys/vnode.h>

     int
     vinvalbuf(struct vnode *vp, int flags, struct ucred *cred, struct proc
     *p, int slpflag, int slptimeo);

DESCRIPTION
     The vinvalbuf() function invalidates all of the buffers associated with
     the given vnode.  This includes buffers on the clean list and the dirty
     list.  If the V_SAVE flag is specified then the buffers on the dirty list
     are synced prior to being released.  If the V_SAVEMETA flag is set,
     indirect blocks will not be flushed.

     Its arguments are:

     vp		   A pointer to the vnode whose buffers will be invalidated.

     flags	   The supported flags are V_SAVE and V_SAVEMETA.  V_SAVE
		   indicates that dirty buffers should be synced with the
		   disk.  V_SAVEMETA indicates that indirect blocks should not
		   be flushed.

     cred	   The user credentials that are used to VOP_FSYNC(9) buffers
		   if V_SAVE is set.

     p		   The process responsible for this call.

     slpflag	   The slp flag that will be used in the priority of any
		   sleeps in the function.

     slptimeo	   The timeout for any sleeps in the function.

LOCKS
     The vnode is assumed to be locked prior to the call and remains locked
     upon return.

RETURN VALUES
     A value of 0 is returned on success.

PSEUDOCODE
	   vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY, p);
	   error = vinvalbuf(devvp, V_SAVE, cred, p, 0, 0);
	   VOP_UNLOCK(devvp, 0, p);
	   if (error)
		   return (error);

ERRORS
     [ENOSPC]	   The file system is full.  (With V_SAVE)

     [EDQUOT]	   Disc quota exceeded.	 (With V_SAVE)

     [EWOULDBLOCK]
		   Sleep operation timed out.  (See slptimeo)

     [ERESTART]	   A signal needs to be delivered and the system call should
		   be restarted.  (With PCATCH set in slpflag)

     [EINTR]	   The system has been interrupted by a signal.	 (With PCATCH
		   set in slpflag)

SEE ALSO
     tsleep(9), vnode(9)

AUTHORS
     This man page was originally written by Chad David <davidc@acns.ab.ca>
     for FreeBSD.

OpenBSD 4.9			 May 31, 2007			   OpenBSD 4.9
[top]

List of man pages available for OpenBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net