On Fri, Sep 22, 2023 at 09:48:59AM +0200, David Hildenbrand wrote: > On 22.09.23 09:47, Matthew Wilcox wrote: > > On Fri, Sep 22, 2023 at 03:09:20PM +0800, Yajun Deng wrote: > > > - __init_single_page(page, pfn, zone, nid); > > > + __init_single_page(page, pfn, zone, nid, true, false); > > > > So Linus has just had a big rant about not doing bool flags to > > functions. And in particular _multiple_ bool flags to functions. > > > > ie this should be: > > > > #define INIT_PAGE_COUNT (1 << 0) > > #define INIT_PAGE_RESERVED (1 << 1) > > > > __init_single_page(page, pfn, zone, nid, INIT_PAGE_COUNT); > > > > or something similar. > > > > I have no judgement on the merits of this patch so far. Do you have > > performance numbers for each of these patches? Some of them seem quite > > unlikely to actually help, at least on a machine which is constrained > > by cacheline fetches. > > The last patch contains > > before: > node 0 deferred pages initialised in 78ms > > after: > node 0 deferred pages initialised in 72ms > > Not earth-shattering :D Maybe with much bigger machines relevant? Patch 3 contains The following data was tested on an x86 machine with 190GB of RAM. before: free_low_memory_core_early() 342ms after: free_low_memory_core_early() 286ms Which is more impressive, but still I'm not convinced that it's worth the added complexity and potential subtle bugs. > -- > Cheers, > > David / dhildenb > -- Sincerely yours, Mike.