The error message when I build vm tests on debian10 (GLIBC 2.28):
userfaultfd.c: In function ‘userfaultfd_pagemap_test’:
userfaultfd.c:1393:37: error: ‘MADV_PAGEOUT’ undeclared (first use
in this function); did you mean ‘MADV_RANDOM’?
if (madvise(area_dst, test_pgsize, MADV_PAGEOUT))
^~~~~~~~~~~~
MADV_RANDOM
This patch includes these newer definitions from UAPI linux/mman.h,
is useful to fix tests build on systems without these definitions in
glibc sys/mman.h.
Signed-off-by: Chengming Zhou <[email protected]>
---
tools/testing/selftests/vm/userfaultfd.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/testing/selftests/vm/userfaultfd.c b/tools/testing/selftests/vm/userfaultfd.c
index 2f49c9af1b58..3fc1d2ee2948 100644
--- a/tools/testing/selftests/vm/userfaultfd.c
+++ b/tools/testing/selftests/vm/userfaultfd.c
@@ -46,6 +46,7 @@
#include <signal.h>
#include <poll.h>
#include <string.h>
+#include <linux/mman.h>
#include <sys/mman.h>
#include <sys/syscall.h>
#include <sys/ioctl.h>
--
2.20.1
On 2/26/22 10:53 PM, Chengming Zhou wrote:
> The error message when I build vm tests on debian10 (GLIBC 2.28):
>
> userfaultfd.c: In function ‘userfaultfd_pagemap_test’:
> userfaultfd.c:1393:37: error: ‘MADV_PAGEOUT’ undeclared (first use
> in this function); did you mean ‘MADV_RANDOM’?
> if (madvise(area_dst, test_pgsize, MADV_PAGEOUT))
> ^~~~~~~~~~~~
> MADV_RANDOM
>
> This patch includes these newer definitions from UAPI linux/mman.h,
> is useful to fix tests build on systems without these definitions in
> glibc sys/mman.h.
>
> Signed-off-by: Chengming Zhou <[email protected]>
> ---
> tools/testing/selftests/vm/userfaultfd.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/vm/userfaultfd.c b/tools/testing/selftests/vm/userfaultfd.c
> index 2f49c9af1b58..3fc1d2ee2948 100644
> --- a/tools/testing/selftests/vm/userfaultfd.c
> +++ b/tools/testing/selftests/vm/userfaultfd.c
> @@ -46,6 +46,7 @@
> #include <signal.h>
> #include <poll.h>
> #include <string.h>
> +#include <linux/mman.h>
> #include <sys/mman.h>
> #include <sys/syscall.h>
> #include <sys/ioctl.h>
>
Looks good to me.
Andrew,
If you want to take this through your tree or I can apply it.
Reviewed-by: Shuah Khan <[email protected]>
thanks,
-- Shuah