pmem2 API version 1.0

The PMDK repository on GitHub is the ultimate source of information on PMDK from release 2.0! For all questions and to submit eventual issues please follow to that repository. The PMDK documentation collected here should be valid up to the 1.13.1 release but is maintained only on a best-effort basis and may not reflect the latest state of the art.

comment: <> (pmem2_source_from_fd.3 – man page for pmem2_source_from_fd

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
CAVEATS
SEE ALSO

NAME

pmem2_source_from_fd(), pmem2_source_delete() - creates or deletes an instance of persistent memory data source

SYNOPSIS

#include <libpmem2.h>

int pmem2_source_from_fd(struct pmem2_source *src, int fd);
int pmem2_source_delete(struct pmem2_source **src);

DESCRIPTION

The pmem2_source_from_fd() function validates the file descriptor and instantiates a new struct pmem2_source* object describing the data source.

fd must be opened with O_RDONLY or O_RDWR mode.

If fd is invalid, then the function fails.

The pmem2_source_delete() function frees *src returned by pmem2_source_from_fd() and sets *src to NULL. If *src is NULL, no operation is performed.

RETURN VALUE

The pmem2_source_from_fd() function return 0 on success or a negative error code on failure.

The pmem2_source_delete() function always returns 0.

ERRORS

The pmem2_source_from_fd() function can fail with the following errors:

  • PMEM2_E_INVALID_FILE_HANDLE - fd is not an open and valid file descriptor.

  • PMEM2_E_INVALID_FILE_HANDLE - fd is opened in O_WRONLY mode.

  • PMEM2_E_INVALID_FILE_TYPE - fd points to a directory, block device, pipe, or socket.

  • PMEM2_E_INVALID_FILE_TYPE - fd points to a character device other than Device DAX.

The pmem2_source_from_fd() function can also return -ENOMEM in case of insufficient memory to allocate an instance of struct pmem2_source.

SEE ALSO

errno(3), pmem2_map_new(3), libpmem2(7) and https://pmem.io

The contents of this web site and the associated GitHub repositories are BSD-licensed open source.