On 6/7/24 7:10 PM, John Hubbard wrote:
On Ubuntu 23.04, the kvm and mdwe selftests/mm build fails due to
missing a few items that are found in prctl.h. Here is an excerpt of the
build failures:

The subject line is confused: it really should start with "selftests/mm",
not "mm/selftests". :)


thanks,
John Hubbard
NVIDIA


ksm_tests.c:252:13: error: use of undeclared identifier 'PR_SET_MEMORY_MERGE'
...
mdwe_test.c:26:18: error: use of undeclared identifier 'PR_SET_MDWE'
mdwe_test.c:38:18: error: use of undeclared identifier 'PR_GET_MDWE'

Fix these errors by adding the missing items to vm_util.h, and include
vm_util.h from mdwe_test.c.

Signed-off-by: John Hubbard <jhubb...@nvidia.com>
---
  tools/testing/selftests/mm/mdwe_test.c |  1 +
  tools/testing/selftests/mm/vm_util.h   | 15 +++++++++++++++
  2 files changed, 16 insertions(+)

diff --git a/tools/testing/selftests/mm/mdwe_test.c 
b/tools/testing/selftests/mm/mdwe_test.c
index 200bedcdc32e..cfe0b64d1567 100644
--- a/tools/testing/selftests/mm/mdwe_test.c
+++ b/tools/testing/selftests/mm/mdwe_test.c
@@ -15,6 +15,7 @@
  #include <unistd.h>
#include "../kselftest_harness.h"
+#include "vm_util.h"
#ifndef __aarch64__
  # define PROT_BTI     0
diff --git a/tools/testing/selftests/mm/vm_util.h 
b/tools/testing/selftests/mm/vm_util.h
index 9007c420d52c..99cbb7c0ea9d 100644
--- a/tools/testing/selftests/mm/vm_util.h
+++ b/tools/testing/selftests/mm/vm_util.h
@@ -61,3 +61,18 @@ unsigned long get_free_hugepages(void);
#define PAGEMAP_PRESENT(ent) (((ent) & (1ull << 63)) != 0)
  #define PAGEMAP_PFN(ent)      ((ent) & ((1ull << 55) - 1))
+
+#ifndef PR_SET_MEMORY_MERGE
+#define PR_SET_MEMORY_MERGE            67
+#endif
+
+#ifndef PR_GET_MEMORY_MERGE
+#define PR_GET_MEMORY_MERGE            68
+#endif
+
+#ifndef PR_SET_MDWE
+#define PR_SET_MDWE                    65
+#define PR_MDWE_REFUSE_EXEC_GAIN       (1UL << 0)
+#define PR_MDWE_NO_INHERIT             (1UL << 1)
+#define PR_GET_MDWE                    66
+#endif


Reply via email to