---
name: "VFS_QUOTACTL"
section: "9"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/VFS_QUOTACTL"
---

# VFS\_QUOTACTL(9)

manipulate file system quotas

## NAME

**VFS\_QUOTACTL** – manipulate file system quotas

## SYNOPSIS

**#include \<sys/param.h\>**

**#include \<sys/mount.h\>**

**#include \<sys/vnode.h\>**

*int*\

**VFS\_QUOTACTL**(*struct mount \*mp*, *int cmds*, *uid\_t uid*, *void \*arg*, *bool \*mp\_busy*);

## DESCRIPTION

Implement file system quotas.

The *mp\_busy* argument is an input/output parameter. **VFS\_QUOTACTL**() must be called with *mp* marked busy through [vfs\_busy(9)](/vfs_busy/9.md) and *\*mp\_busy* set to true. The filesystem implementation of **VFS\_QUOTACTL**() may then unbusy *mp* using [vfs\_unbusy(9)](/vfs_unbusy/9.md) prior to performing quota file I/O. In this case the implementation must set *\*mp\_busy* to false to indicate that the caller must not unbusy *mp* upon completion of **VFS\_QUOTACTL**().

See [quotactl(2)](/quotactl/2.md) for a description of the remaining arguments.

## SEE ALSO

[quotactl(2)](/quotactl/2.md), [vnode(9)](/vnode/9.md)

## AUTHORS

This manual page was written by Doug Rabson.
