1
0
mirror of https://github.com/xmrig/xmrig.git synced 2025-12-07 07:55:04 -05:00

Merge pull request #3129 from SChernykh/dev

Fix: protectRX flushed CPU cache only on MacOS/iOS
This commit is contained in:
xmrig
2022-09-22 07:02:28 +07:00
committed by GitHub

View File

@@ -112,13 +112,19 @@ bool xmrig::VirtualMemory::protectRWX(void *p, size_t size)
bool xmrig::VirtualMemory::protectRX(void *p, size_t size) bool xmrig::VirtualMemory::protectRX(void *p, size_t size)
{ {
bool result = true;
# if defined(XMRIG_OS_APPLE) && defined(XMRIG_ARM) # if defined(XMRIG_OS_APPLE) && defined(XMRIG_ARM)
pthread_jit_write_protect_np(true); pthread_jit_write_protect_np(true);
flushInstructionCache(p, size);
return true;
# else # else
return mprotect(p, size, PROT_READ | PROT_EXEC) == 0; result = (mprotect(p, size, PROT_READ | PROT_EXEC) == 0);
# endif # endif
# if defined(XMRIG_ARM)
flushInstructionCache(p, size);
# endif
return result;
} }