aboutsummaryrefslogtreecommitdiff
path: root/src/common/host_memory.cpp
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2021-07-27 20:06:25 +0000
committerJan Beich <jbeich@FreeBSD.org>2021-07-27 20:15:23 +0000
commit353be2306c7b3b640755fbf9b95aa0c75c6a7cfe (patch)
tree1b185980a814f2cca0dee9a0dad69ef29e50a527 /src/common/host_memory.cpp
parentc4cd82fa7c146ad7caca14d199cfdaa9147eeefb (diff)
host_memory: Add workaround for FreeBSD 12
src/common/host_memory.cpp:360:14: error: use of undeclared identifier 'memfd_create' fd = memfd_create("HostMemory", 0); ^
Diffstat (limited to 'src/common/host_memory.cpp')
-rw-r--r--src/common/host_memory.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/common/host_memory.cpp b/src/common/host_memory.cpp
index 49e58d250e..6661244cfb 100644
--- a/src/common/host_memory.cpp
+++ b/src/common/host_memory.cpp
@@ -357,7 +357,12 @@ public:
});
// Backing memory initialization
+#if defined(__FreeBSD__) && __FreeBSD__ < 13
+ // XXX Drop after FreeBSD 12.* reaches EOL on 2024-06-30
+ fd = shm_open(SHM_ANON, O_RDWR, 0600);
+#else
fd = memfd_create("HostMemory", 0);
+#endif
if (fd == -1) {
LOG_CRITICAL(HW_Memory, "memfd_create failed: {}", strerror(errno));
throw std::bad_alloc{};