On Tue, Apr 26, 2022 at 1:33 PM Peter Xu peterx@redhat.com wrote:
Axel,
On Fri, Apr 22, 2022 at 02:29:41PM -0700, Axel Rasmussen wrote:
@@ -65,6 +66,8 @@ struct userfaultfd_ctx { unsigned int flags; /* features requested from the userspace */ unsigned int features;
/* whether or not to handle kernel faults */
bool handle_kernel_faults;
Could you help explain why we need this bool? I failed to figure out myself on the difference against "!(ctx->flags & UFFD_USER_MODE_ONLY)".
Ah, yeah you're right, we can get rid of it and just rely on UFFD_USER_MODE_ONLY.
Just to add context, in a previous version I never sent out, I had:
ctx->handle_kernel_faults = userfaultfd_allowed(...);
That's wrong for other reasons, but if we were going to do that we'd have to store the result, since it's a function not just of the flags, but also of the method used to create the userfaultfd. I changed this without also dropping the boolean, which can now be cleaned up. I'll include this change in a v3.
Thanks,
-- Peter Xu