]> git.proxmox.com Git - ceph.git/blame - ceph/src/pmdk/src/libpmem2/deep_flush_windows.c
import ceph 16.2.7
[ceph.git] / ceph / src / pmdk / src / libpmem2 / deep_flush_windows.c
CommitLineData
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 */
21int
22pmem2_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 */
37int
38pmem2_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}