Not to nitpick an RFC, but since the stuff in this patch seems less likely to change I think you should avoid using #ifdefs For instance On Wed, Jul 10, 2024 at 4:43 PM James Houghton <jthoughton@xxxxxxxxxx> wrote: > +static inline bool kvm_userfault_enabled(struct kvm *kvm) > +{ > +#ifdef CONFIG_KVM_USERFAULT > + return !!rcu_access_pointer(kvm->userfault_ctx); > +#else > + return false; > +#endif > +} can be > +static inline bool kvm_userfault_enabled(struct kvm *kvm) > +{ > + if (IS_ENABLED(CONFIG_KVM_USERFAULT)) { > + return !!rcu_access_pointer(kvm->userfault_ctx); > + } else { > + return false; > + } > +} (however kernel style tells you to write that :), the cap-supported check can be moved into kvm_vm_ioctl_enable_userfault(), etc