Skip to content

Commit 7b9f79b

Browse files
author
michalbiesek
committed
Add zmemcpy_pmem implementation
1 parent 293e958 commit 7b9f79b

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

src/zmalloc.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,14 @@ static void *zrealloc_pmem(void *ptr, size_t size) {
121121
zmalloc_pmem_not_available();
122122
return NULL;
123123
}
124+
125+
void *zmemcpy_pmem(void *dst, const void *src, size_t num) {
126+
(void)(dst);
127+
(void)(src);
128+
(void)(num);
129+
zmalloc_pmem_not_available();
130+
return NULL;
131+
}
124132
#endif
125133

126134
#define update_zmalloc_stat_alloc(__n) do { \
@@ -261,6 +269,10 @@ static void *zrealloc_pmem(void *ptr, size_t size) {
261269
return (char*)newptr+PREFIX_SIZE;
262270
#endif
263271
}
272+
273+
void *zmemcpy_pmem(void *dst, const void *src, size_t num) {
274+
return pmem_memcpy(dst, src, num, PMEM_F_MEM_NONTEMPORAL|PMEM_F_MEM_NODRAIN);
275+
}
264276
#endif
265277

266278
void *zmalloc(size_t size) {

src/zmalloc.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ size_t zmalloc_get_threshold(void);
108108
void *zmalloc_dram(size_t size);
109109
void *zcalloc_dram(size_t size);
110110
void *zrealloc_dram(void *ptr, size_t size);
111+
void *zmemcpy_pmem(void *dst, const void *src, size_t num);
111112

112113
#ifdef HAVE_DEFRAG
113114
void zfree_no_tcache(void *ptr);

0 commit comments

Comments
 (0)