VGONE(9) MidnightBSD Kernel Developer’s Manual VGONE(9)

NAME

vgone, vgonel — prepare a vnode for reuse

SYNOPSIS

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

void

vgone(struct vnode *vp);

void

vgonel(struct vnode *vp, struct thread *td);

DESCRIPTION

vgone() and vgonel() prepare a vnode for reuse by another file system. The preparation includes the cleaning of all file system specific data and the removal from its mount point vnode list.

If the vnode has a v_usecount of zero, and its VI_DOOMED flag is not set, it is moved to the head of the free list as in most cases the vnode is about to be reused, or its file system being unmounted.

The difference between vgone() and vgonel() is that vgone() locks the vnode interlock and then calls vgonel() while vgonel() expects the interlock to already be locked.

AUTHORS

This manual page was written by Chad David 〈davidc@acns.ab.ca〉.

MidnightBSD 0.3 November 21, 2001 MidnightBSD 0.3