diff options
Diffstat (limited to 'android/patches/0020-userfaultfd-don-t-use-unsupported-feature.patch')
-rw-r--r-- | android/patches/0020-userfaultfd-don-t-use-unsupported-feature.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/android/patches/0020-userfaultfd-don-t-use-unsupported-feature.patch b/android/patches/0020-userfaultfd-don-t-use-unsupported-feature.patch new file mode 100644 index 000000000000..5dc9563d5932 --- /dev/null +++ b/android/patches/0020-userfaultfd-don-t-use-unsupported-feature.patch @@ -0,0 +1,48 @@ +From 5c872199efc522c08cc34b4763edec861f87abfc Mon Sep 17 00:00:00 2001 +From: Edward Liaw <edliaw@google.com> +Date: Thu, 28 Jul 2022 00:26:52 +0000 +Subject: [PATCH 20/20] userfaultfd: don't use unsupported feature + +UFFD_FEATURE_PAGEFAULT_FLAG_WP was added in linux 5.7 and currently +unsupported in Android >5.10. + +Bug: 234150821 +Test: atest vts_linux_kselftest_x86_64:vm_userfaultfd_anon_x86_64#vm_userfaultfd_anon_x86_64 +Test: atest vts_linux_kselftest_x86_64:vm_userfaultfd_shmem_x86_64#vm_userfaultfd_shmem_x86_64 +Signed-off-by: Edward Liaw <edliaw@google.com> +--- + tools/testing/selftests/vm/userfaultfd.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/tools/testing/selftests/vm/userfaultfd.c b/tools/testing/selftests/vm/userfaultfd.c +index e905bb502667..02cc35b65a7a 100644 +--- a/tools/testing/selftests/vm/userfaultfd.c ++++ b/tools/testing/selftests/vm/userfaultfd.c +@@ -1784,7 +1784,24 @@ static void set_test_type(const char *type) + static void parse_test_type_arg(const char *raw_type) + { + char *buf = strdup(raw_type); ++ /* b/234150821 ++ * UFFD_FEATURE_PAGEFAULT_FLAG_WP unsupported in kernel <5.7 ++ */ ++#ifdef __ANDROID__ ++ uint64_t features = ( ++ UFFD_FEATURE_EVENT_FORK | \ ++ UFFD_FEATURE_EVENT_REMAP | \ ++ UFFD_FEATURE_EVENT_REMOVE | \ ++ UFFD_FEATURE_EVENT_UNMAP | \ ++ UFFD_FEATURE_MISSING_HUGETLBFS | \ ++ UFFD_FEATURE_MISSING_SHMEM | \ ++ UFFD_FEATURE_SIGBUS | \ ++ UFFD_FEATURE_THREAD_ID | \ ++ UFFD_FEATURE_MINOR_HUGETLBFS | \ ++ UFFD_FEATURE_MINOR_SHMEM); ++#else + uint64_t features = UFFD_API_FEATURES; ++#endif + + while (buf) { + const char *token = strsep(&buf, ":"); +-- +2.42.0.609.gbb76f46606-goog + |