]>
Commit | Line | Data |
---|---|---|
a4b75251 TL |
1 | // SPDX-License-Identifier: BSD-3-Clause |
2 | /* Copyright 2020, Intel Corporation */ | |
3 | ||
4 | /* | |
5 | * deep_flush_windows.c -- deeep_flush functionality | |
6 | */ | |
7 | ||
8 | #include <errno.h> | |
9 | #include <stdio.h> | |
10 | #include <stdlib.h> | |
11 | ||
12 | #include "deep_flush.h" | |
13 | #include "libpmem2.h" | |
14 | #include "out.h" | |
15 | #include "pmem2_utils.h" | |
16 | #include "persist.h" | |
17 | ||
18 | /* | |
19 | * pmem2_deep_flush_dax -- performs flush buffer operation | |
20 | */ | |
21 | int | |
22 | pmem2_deep_flush_dax(struct pmem2_map *map, void *ptr, size_t size) | |
23 | { | |
24 | int ret = pmem2_flush_file_buffers_os(map, ptr, size, 0); | |
25 | if (ret) { | |
26 | LOG(1, "cannot flush buffers addr %p len %zu", ptr, size); | |
27 | return ret; | |
28 | } | |
29 | ||
30 | return 0; | |
31 | } | |
32 | ||
33 | /* | |
34 | * pmem2_deep_flush_write -- perform write to deep_flush file | |
35 | * on given region_id (Device Dax only) | |
36 | */ | |
37 | int | |
38 | pmem2_deep_flush_write(unsigned region_id) | |
39 | { | |
40 | const char *err = | |
41 | "BUG: pmem2_deep_flush_write should never be called on this OS"; | |
42 | ERR("%s", err); | |
43 | ASSERTinfo(0, err); | |
44 | ||
45 | /* not supported */ | |
46 | return PMEM2_E_NOSUPP; | |
47 | } |