Merge tag 'drm-next-2022-08-12-1' of git://anongit.freedesktop.org/drm/drm
[platform/kernel/linux-starfive.git] / fs / userfaultfd.c
index de86f5b..1c44bf7 100644 (file)
@@ -1925,10 +1925,8 @@ static int userfaultfd_api(struct userfaultfd_ctx *ctx,
        ret = -EFAULT;
        if (copy_from_user(&uffdio_api, buf, sizeof(uffdio_api)))
                goto out;
-       features = uffdio_api.features;
-       ret = -EINVAL;
-       if (uffdio_api.api != UFFD_API || (features & ~UFFD_API_FEATURES))
-               goto err_out;
+       /* Ignore unsupported features (userspace built against newer kernel) */
+       features = uffdio_api.features & UFFD_API_FEATURES;
        ret = -EPERM;
        if ((features & UFFD_FEATURE_EVENT_FORK) && !capable(CAP_SYS_PTRACE))
                goto err_out;