On 11/10/20 11:50 AM, Matthew Wilcox wrote: > On Tue, Nov 10, 2020 at 11:31:31AM -0800, Mike Kravetz wrote: >> On 11/9/20 5:52 AM, Oscar Salvador wrote: >>> On Sun, Nov 08, 2020 at 10:10:55PM +0800, Muchun Song wrote: > > I don't like config options. I like boot options even less. I don't > know how to describe to an end-user whether they should select this > or not. Is there a way to make this not a tradeoff? Or make the > tradeoff so minimal as to be not worth describing? (do we have numbers > for the worst possible situation when enabling this option?) It is not exactly worst case, but Muchun provided some simple benchmarking results in the cover letter. Quick summary is that hugetlb page creation and free time is "~2x slower". At first glance, one would say that is terrible. However, remember that the majority of use cases create hugetlb pages at or shortly after boot time and add them to the pool. So, additional overhead is at pool creation time. There is no change to 'normal run time' operations of getting a page from or returning a page to the pool (think page fault/unmap). > I haven't read through these patches in detail, so maybe we do this > already, but when we free the pages to the buddy allocator, do we retain > the third page to use for the PTEs (and free pages 3-7), or do we allocate > a separate page for the PTES and free pages 2-7? I haven't got there in this latest series. But, in previous revisions the code did allocate a separate page. -- Mike Kravetz