On 8/27/22 17:31, John Hubbard wrote: > On 8/27/22 17:12, Andrew Morton wrote: >> On Sat, 27 Aug 2022 16:59:32 -0700 John Hubbard <jhubbard@xxxxxxxxxx> wrote: >> >>> Anyway, I'll change my patch locally for now, to this: >>> >>> static inline void dio_w_unpin_user_pages(struct page **pages, >>> unsigned long npages) >>> { >>> /* Careful, release_pages() uses a smaller integer type for npages: */ >>> if (WARN_ON_ONCE(npages > (unsigned long)INT_MAX)) >>> return; >>> >>> release_pages(pages, (int)npages); >>> } >> >> Well, it might be slower. release_pages() has a ton of fluff. >> >> As mentioned, the above might be faster if the pages tend >> to have page_count()==1?? >> > > I don't think we can know the answer to that. This code is called To clarify: I mean, I don't think we can know whether or not these pages usually have page_count()==1. thanks, -- John Hubbard NVIDIA