Man page - pmem2_map_from_existing(3)
Packages contas this manual
- pmem2_config_set_vdm(3)
- pmem2_get_drain_fn(3)
- pmem2_source_get_fd(3)
- pmem2_config_set_length(3)
- pmem2_vm_reservation_map_find_prev(3)
- pmem2_deep_flush(3)
- pmem2_source_from_fd(3)
- libpmem2_unsafe_shutdown(7)
- pmem2_source_pread_mcsafe(3)
- pmem2_async(3)
- pmem2_config_set_sharing(3)
- pmem2_badblock_next(3)
- pmem2_source_from_anon(3)
- pmem2_source_get_handle(3)
- pmem2_source_device_id(3)
- pmem2_map_get_size(3)
- pmem2_config_delete(3)
- pmem2_map_get_address(3)
- pmem2_source_alignment(3)
- pmem2_source_device_usc(3)
- pmem2_config_set_vm_reservation(3)
- pmem2_get_flush_fn(3)
- pmem2_config_set_protection(3)
- pmem2_vm_reservation_new(3)
- pmem2_get_memset_fn(3)
- pmem2_badblock_context_delete(3)
- pmem2_config_new(3)
- pmem2_vm_reservation_delete(3)
- pmem2_vm_reservation_get_address(3)
- pmem2_source_size(3)
- pmem2_vm_reservation_shrink(3)
- pmem2_memcpy_async(3)
- pmem2_vm_reservation_map_find(3)
- pmem2_vm_reservation_map_find_last(3)
- pmem2_badblock_clear(3)
- pmem2_memset_async(3)
- pmem2_map_get_store_granularity(3)
- pmem2_memmove_async(3)
- pmem2_get_persist_fn(3)
- pmem2_vm_reservation_map_find_next(3)
- pmem2_vm_reservation_map_find_first(3)
- pmem2_source_pwrite_mcsafe(3)
- pmem2_get_memcpy_fn(3)
- pmem2_map_from_existing(3)
- pmem2_map_new(3)
- pmem2_get_memmove_fn(3)
- pmem2_config_set_required_store_granularity(3)
- pmem2_config_set_offset(3)
- pmem2_source_from_handle(3)
- libpmem2(7)
- pmem2_perror(3)
- pmem2_map_delete(3)
- pmem2_badblock_context_new(3)
- pmem2_vm_reservation_extend(3)
- pmem2_source_delete(3)
- pmem2_source_numa_node(3)
- pmem2_errormsg(3)
- pmem2_vm_reservation_get_size(3)
apt-get install libpmem2-dev
Manual
| () | PMDK Programmer's Manual | () |
NAME
pmem2_map_from_existing() - creates a pmem2_map object from an existing mapping
SYNOPSIS
-
#include <libpmem2.h> int pmem2_map_from_existing(struct pmem2_map **map, const struct pmem2_source *src,
void *addr, size_t len, enum pmem2_granularity gran);
DESCRIPTION
The pmem2_map_from_existing() returns a new *struct pmem2_map for mapping provided by the user. This function allows usage of libpmem2(7) API without pmem2_map_new(3) for mapping file. Mapping is defined by addr and len. You have to specify underlying file as a src, and define granularity of this mapping. See pmem2_config_set_required_store_granularity(3) and libpmem2**(7) for more details.
For the pmem2_map object created by the pmem2_map_from_existing(3) function, the pmem2_map_delete(3) will only destroy the object, but it won’t unmap the mapping this object describes.
RETURN VALUE
The pmem2_map_from_existing() function returns 0 when it succeeds or a negative error code on failure.
ERRORS
The pmem2_map_from_existing() can fail with the following errors:
PMEM2_E_MAPPING_EXISTS - when contiguous region (addr, addr + len) is already registered by libpmem2
It can also return -ENOMEM from the underlying malloc(2) function.
SEE ALSO
malloc(2), pmem2_map_delete(3), pmem2_map_new(3), pmem2_source_from_fd(3), libpmem2(7) and <https://pmem.io>
| 2023-05-31 | PMDK - |