vget(9)

vget9

Get a vnode from the free list

Usage

#include <sys/param.h>

#include <sys/vnode.h>

int

vget(struct vnode *vp, int lockflag, struct thread *td);

Overview

Get a vnode from the free list and increment its reference count.

vp

The vnode to remove from the free list.

lockflag

If non-zero, the vnode will also be locked.

When not in use, vnodes are kept on a free list. The vnodes still reference valid files but may be reused to refer to a new file at any time. Often, these vnodes are also held in caches in the system, such as the name cache.

When a vnode which is on the free list is used again, for instance if the vnode was found in the name cache as a result of a call to VOP_LOOKUP(9) then the new user must call vget() to increment the reference count and remove it from the free list.

Releases

83 releases since FreeBSD 2.2.2-RELEASE; the text changed 41 times.

  1. 2.2.2–2.2.8
  2. 2.2.9
  3. 3.0–3.2
  4. 3.3–3.5.1
  5. 4.0–4.4
  6. 4.5–4.11
  7. 5.0
  8. 5.1
  9. 5.2–5.5
  10. 6.0–6.3
  11. 6.4
  12. 7.0
  13. 7.1
  14. 7.2
  15. 7.3
  16. 7.4
  17. 8.0
  18. 8.1
  19. 8.2
  20. 8.3
  21. 8.4
  22. 9.0
  23. 9.1
  24. 9.2
  25. 9.3
  26. 10.0
  27. 10.1
  28. 10.2
  29. 10.3
  30. 10.4
  31. 11.0
  32. 11.1
  33. 11.2
  34. 11.3
  35. 11.4
  36. 12.0
  37. 12.1
  38. 12.2
  39. 12.3
  40. 12.4
  41. 13.0–13.2
  42. 13.3–16.0

Authors

This manual page was written by Doug Rabson.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.