[Scudo] enabling anonymous named pages on Linux 5.17 and onwards.
Reviewers: vitalybuka
Reviewed-By: vitalybuka
Differential Revision: https://reviews.llvm.org/D122962
GitOrigin-RevId: 619499252307c520fd840a5f3c79ffa00eaf2264
diff --git a/linux.cpp b/linux.cpp
index c77c1bb..88875c5 100644
--- a/linux.cpp
+++ b/linux.cpp
@@ -28,11 +28,11 @@
#include <time.h>
#include <unistd.h>
-#if SCUDO_ANDROID
#include <sys/prctl.h>
-// Definitions of prctl arguments to set a vma name in Android kernels.
-#define ANDROID_PR_SET_VMA 0x53564d41
-#define ANDROID_PR_SET_VMA_ANON_NAME 0
+// Definitions of prctl arguments to set a vma name in kernels (Linux from 5.17).
+#ifndef PR_SET_VMA
+#define PR_SET_VMA 0x53564d41
+#define PR_SET_VMA_ANON_NAME 0
#endif
namespace scudo {
@@ -66,10 +66,8 @@
dieOnMapUnmapError(errno == ENOMEM ? Size : 0);
return nullptr;
}
-#if SCUDO_ANDROID
if (Name)
- prctl(ANDROID_PR_SET_VMA, ANDROID_PR_SET_VMA_ANON_NAME, P, Size, Name);
-#endif
+ prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, P, Size, Name);
return P;
}