---
name: "Q_XQUOTARM"
section: "2const"
platform: "linux"
package: "man-pages"
version: "6.19-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Q_XQUOTARM"
---

# Q\_XQUOTARM(2const)

free disk space taken by disk quotas

## NAME

Q\_XQUOTARM - free disk space taken by disk quotas

## LIBRARY

Standard C library (*libc*, *-lc*)

## SYNOPSIS

```
#include <xfs/xqm.h>      /* See quotactl(2) */
#include <sys/quota.h>
```

**int quotactl(QCMD(Q\_XQUOTARM,** *type***), const char \*\_Nullable** *special***, 0,**              **caddr\_t** *addr***);**

**#include \<xfs/xqm.h\>**      /\* See [quotactl\_fd(2)](/quotactl_fd/2.md) \*/ **#include \<sys/syscall.h\>**  /\* Definition of **SYS\_\*** constants \*/ **#include \<unistd.h\>**

**int syscall(SYS\_quotactl\_fd, int** *fd***, QCMD(Q\_XQUOTARM,** *type***), 0,**             **unsigned int \****addr***);**

## DESCRIPTION

Free the disk space taken by disk quotas.

The *addr* argument should be a pointer to an *unsigned int* value containing flags (the same as in *.d\_flags* field of the [**fs\_disk\_quota**(2type)](/fs_disk_quota/2type.md) structure) which identify what types of quota should be removed.

Quotas must have already been turned off.

## RETURN VALUE

See [**quotactl**(2)](/quotactl/2.md).

## ERRORS

See [**quotactl**(2)](/quotactl/2.md).

- **EINVAL** (since Linux 5.5)

  *addr* does not point to valid quota types.

## STANDARDS

Linux.

## HISTORY

Buggy until Linux 3.16.

## CAVEATS

The quota *type* argument is ignored, but should remain valid in order to pass preliminary quotactl syscall handler checks.

## SEE ALSO

[**quotactl**(2)](/quotactl/2.md), [**quotactl\_fd**(2)](/quotactl_fd/2.md), [**fs\_disk\_quota**(2type)](/fs_disk_quota/2type.md)
