---
name: "vgonel"
section: "9"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/vgonel"
---

# vgonel(9)

prepare a vnode for reuse

## 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 VDOOMED 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.

## SEE ALSO

vclean(9)

## AUTHORS

This manual page was written by Chad David ⟨davidc@acns.ab.ca⟩.
