On Wed, Apr 03, 2024 at 09:25:41AM +0200, Oscar Salvador wrote: > On Wed, Apr 03, 2024 at 02:19:19PM +0800, Muchun Song wrote: > > I think you mean this patch [1], right? With alloc_frozen_pages() > > introduced, we could get rid of the trick from HugeTLB code. > > Ah yes, that one, thanks. > It would be nice, but having read the discussion I am kind of skeptical. > > But maybe some to revisit. I haven't given up on it. It's just currently parked, awaiting more cleanups, some of which I have scheduled for the next merge window. Part of the memdesc project will involve not having refcounts for some memdescs. Slab, percpu and pagetable don't need them, for example. I think hugetlb is being unnecessarily paranoid here, tbh. Or maybe this part is just badly structured; if we're allocating a hugetlb folio, it should be fine for its refcount to be temporarily elevated by someone else. Not sure I can figure out what's going on in alloc_and_dissolve_hugetlb_folio() though.