VOP_REMOVE(9)

VOP_REMOVE9

Remove a file or directory

Usage

#include <sys/param.h>

#include <sys/vnode.h>

int

VOP_REMOVE(struct vnode *dvp, struct vnode *vp, struct componentname *cnp);

int

VOP_RMDIR(struct vnode *dvp, struct vnode *vp, struct componentname *cnp);

Overview

These entry points remove files and directories respectively.

The arguments are:

dvp

The vnode of the directory.

vp

The vnode of the file to be removed.

cnp

Pathname information about the file.

Locks

Both dvp and vp should be locked on entry and remain locked on return.

Return values

Zero is returned on success, otherwise an error code is returned.

Errors

[EPERM]

The file is immutable.

[ENOTEMPTY]

An attempt was made to remove a directory which is not empty.

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.3
  6. 4.4
  7. 4.5–4.11
  8. 5.0–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.