From 58fb0b9ded8880b3fed9c2d86ecb58d1763af50f Mon Sep 17 00:00:00 2001 From: lizzie Date: Thu, 28 May 2026 17:36:53 +0000 Subject: [PATCH] managarm fixed their memfd --- src/common/host_memory.cpp | 10 +++++----- src/common/host_memory.h | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/common/host_memory.cpp b/src/common/host_memory.cpp index 445d34c444..99dfd3d633 100644 --- a/src/common/host_memory.cpp +++ b/src/common/host_memory.cpp @@ -516,7 +516,7 @@ public: fd = shm_open_anon(O_RDWR | O_CREAT | O_EXCL | O_NOFOLLOW, 0600); #elif defined(__FreeBSD__) fd = shm_open(SHM_ANON, O_RDWR, 0600); -#elif defined(__APPLE__) || defined(__managarm__) +#elif defined(__APPLE__) // macOS doesn't have memfd_create, use anonymous temporary file char template_path[] = "/tmp/eden_mem_XXXXXX"; fd = mkstemp(template_path); @@ -723,7 +723,7 @@ HostMemory::HostMemory(HostMemory&&) noexcept = default; HostMemory& HostMemory::operator=(HostMemory&&) noexcept = default; void HostMemory::Map(size_t virtual_offset, size_t host_offset, size_t length, MemoryPermission perms, bool separate_heap) { -#if !(defined(__OPENORBIS__) || defined(__managarm__)) +#if !defined(__OPENORBIS__) ASSERT(virtual_offset % PageAlignment == 0); ASSERT(host_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); @@ -737,7 +737,7 @@ void HostMemory::Map(size_t virtual_offset, size_t host_offset, size_t length, M } void HostMemory::Unmap(size_t virtual_offset, size_t length, bool separate_heap) { -#if !(defined(__OPENORBIS__) || defined(__managarm__)) +#if !defined(__OPENORBIS__) ASSERT(virtual_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); ASSERT(virtual_offset + length <= virtual_size); @@ -749,7 +749,7 @@ void HostMemory::Unmap(size_t virtual_offset, size_t length, bool separate_heap) } void HostMemory::Protect(size_t virtual_offset, size_t length, MemoryPermission perm) { -#if !(defined(__OPENORBIS__) || defined(__managarm__)) +#if !defined(__OPENORBIS__) ASSERT(virtual_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); ASSERT(virtual_offset + length <= virtual_size); @@ -768,7 +768,7 @@ void HostMemory::ClearBackingRegion(size_t physical_offset, size_t length, u32 f } void HostMemory::EnableDirectMappedAddress() { -#if !(defined(__OPENORBIS__) || defined(__managarm__)) +#if !defined(__OPENORBIS__) if (impl) { impl->EnableDirectMappedAddress(); virtual_size += reinterpret_cast(virtual_base); diff --git a/src/common/host_memory.h b/src/common/host_memory.h index 24f4670732..39d71f268a 100644 --- a/src/common/host_memory.h +++ b/src/common/host_memory.h @@ -77,7 +77,7 @@ private: size_t backing_size{}; size_t virtual_size{}; -#if !(defined(__OPENORBIS__) || defined(__managarm__)) +#if !defined(__OPENORBIS__) // Low level handler for the platform dependent memory routines class Impl; std::unique_ptr impl;