MirOS Manual: getnewvnode(9)

GETNEWVNODE(9)                BSD Kernel Manual                 GETNEWVNODE(9)

NAME

     getnewvnode - get a new vnode

SYNOPSIS

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

     int
     getnewvnode(enum vtagtype tag, struct mount *mp,
             int (**vops) __P((void *)), struct vnode **vpp);

DESCRIPTION

     The getnewvnode() function initializes a new vnode, assigning it the
     vnode operations passed in vops. It will have its v_tag field set to tag
     and be placed in the mount queue for the mount point represented by mp.

     The vnode is either freshly allocated, taken from the free list or taken
     from the hold list. If there are no vnodes on the free list, half the
     time a vnode referencing buffers will be taken from the hold list, other-
     wise it will be freshly allocated.

     The arguments to getnewvnode() are:

     tag       The file system type.

     mp        The mount point to add the new vnode to.

     vops      The vnode operations to assign to the new vnode.

     vpp       Points to the new vnode upon successful completion.

RETURN VALUES

     getnewvnode() returns 0 on success, or ENFILE if the vnode table is full.

AUTHORS

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

MirOS BSD #10-current         November 21, 2001                              1

Generated on 2014-07-04 21:17:45 by $MirOS: src/scripts/roff2htm,v 1.79 2014/02/10 00:36:11 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002‒2014 The MirOS Project, Germany.
This product includes material provided by Thorsten Glaser.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.