On Tue, Jun 16, 2020 at 5:51 AM Michal Hocko <mhocko@xxxxxxxxxx> wrote: > > On Tue 16-06-20 13:52:12, David Hildenbrand wrote: > > Commit e900a918b098 ("mm: shuffle initial free memory to improve > > memory-side-cache utilization") introduced shuffling of free pages > > during system boot and whenever we online memory blocks. > > > > However, whenever we online memory blocks, all pages that will be > > exposed to the buddy end up getting freed via __free_one_page(). In the > > general case, we free these pages in MAX_ORDER - 1 chunks, which > > corresponds to the shuffle order. > > > > Inside __free_one_page(), we will already shuffle the newly onlined pages > > using "to_tail = shuffle_pick_tail();". Drop explicit zone shuffling on > > memory hotplug. > > > > Note: When hotplugging a DIMM, each memory block (e.g., 128MB .. 2G on > > x86-64) will get onlined individually, resulting in a shuffle_zone() for > > every memory block getting onlined. > > > > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > > Cc: Alexander Duyck <alexander.h.duyck@xxxxxxxxxxxxxxx> > > Cc: Dan Williams <dan.j.williams@xxxxxxxxx> > > Cc: Michal Hocko <mhocko@xxxxxxxx> > > Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> > > Cc: Kees Cook <keescook@xxxxxxxxxxxx> > > Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> > > Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> > > Acked-by: Michal Hocko <mhocko@xxxxxxxx> Nacked-by: Dan Williams <dan.j.williams@xxxxxxxxx> As explained in another thread this is in active use.