On Thu, Feb 08, 2024 at 03:47:54PM +0000, Alice Ryhl wrote: > +impl Page { > + /// Allocates a new page. > + pub fn new() -> Result<Self, AllocError> { > + // SAFETY: These are the correct arguments to allocate a single page. > + let page = unsafe { > + bindings::alloc_pages( > + bindings::GFP_KERNEL | bindings::__GFP_ZERO | bindings::__GFP_HIGHMEM, I thought I raised this last time, but this is over-specialised for Binder's purposes. Many places that want to allocate a page want different GFP flags from this; they shouldn't even be the default flags. So either what you're defining here is a BinderPage, or new() needs to take GFP flags.