---
name: "hugetlbfs_unlinked_fd_for_size"
section: "3"
platform: "linux"
package: "libhugetlbfs-dev"
version: "2.24-1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/hugetlbfs_unlinked_fd"
---

# hugetlbfs\_unlinked\_fd\_for\_size(3)

Obtain a file descriptor for a new unlinked file in hugetlbfs

Part of [hugetlbfs\_unlinked\_fd(3)](/hugetlbfs_unlinked_fd/3.md).

## NAME

hugetlbfs\_unlinked\_fd, hugetlbfs\_unlinked\_fd\_for\_size - Obtain a file descriptor for a new unlinked file in hugetlbfs

## SYNOPSIS

**#include \<hugetlbfs.h\>**

**int hugetlbfs\_unlinked\_fd(void);**\
 **int hugetlbfs\_unlinked\_fd\_for\_size(long page\_size);**

## DESCRIPTION

These functions return an open file descriptor for a unique, newly-created file in a hugetlbfs filesystem.  To avoid leaking hugepages, the file is unlinked automatically before the function returns.

For hugetlbfs\_unlinked\_fd, the default huge page size is used (see [gethugepagesize(3)](/gethugepagesize/3.md)).  For hugetlbfs\_unlinked\_fd\_for\_size, a valid huge page size must be specified (see [gethugepagesizes(3)](/gethugepagesizes/3.md)).

## RETURN VALUE

On success, a valid open file descriptor is returned.  On failure, -1 is returned and errno may be set appropriately.

## SEE ALSO

*[gethugepagesize(3)](/gethugepagesize/3.md),* *[gethugepagesizes(3)](/gethugepagesizes/3.md),* *[mkstemp(3)](/mkstemp/3.md),* *[libhugetlbfs(7)](/libhugetlbfs/7.md)*

## AUTHORS

libhugetlbfs was written by various people on the libhugetlbfs-devel mailing list.
