Re: [PATCH v1 3/3] mm/shuffle: remove dynamic reconfiguration

From: Dan Williams
Date: Tue Jun 16 2020 - 12:59:56 EST


On Tue, Jun 16, 2020 at 6:45 AM David Hildenbrand <david@xxxxxxxxxx> wrote:
>
> On 16.06.20 14:41, Michal Hocko wrote:
> > [Add Dan]
>
> Whops, dropped by mistake. Thanks for adding.
>
> >
> > On Tue 16-06-20 13:52:13, David Hildenbrand wrote:
> >> Commit e900a918b098 ("mm: shuffle initial free memory to improve
> >> memory-side-cache utilization") promised "autodetection of a
> >> memory-side-cache (to be added in a follow-on patch)" over a year ago.
> >>
> >> The original series included patches [1], however, they were dropped
> >> during review [2] to be followed-up later.
> >>
> >> Let's simplify for now and re-add when really (ever?) needed.
> >>
> >> [1] https://lkml.kernel.org/r/154510700291.1941238.817190985966612531.stgit@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
> >> [2] https://lkml.kernel.org/r/154690326478.676627.103843791978176914.stgit@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
> >>
> >> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> >> Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
> >> Cc: Michal Hocko <mhocko@xxxxxxxx>
> >> Cc: Minchan Kim <minchan@xxxxxxxxxx>
> >> Cc: Huang Ying <ying.huang@xxxxxxxxx>
> >> Cc: Wei Yang <richard.weiyang@xxxxxxxxx>
> >> Cc: Keith Busch <keith.busch@xxxxxxxxx>
> >> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
> >> Signed-off-by: David Hildenbrand <david@xxxxxxxxxx>
> >
> > While I am not against removing this unused code I am really curious
> > what is the future of the auto detection. Has this just fall through
> > cracks or there are some more serious problem to make detection
> > possible/reliable?
>
> From the bouncing mails I assume Keith - author of the original patches
> in [1] - is no longer working at Intel (or I messed up :) "#5.1.0
> Address rejected"). Maybe Dan can clarify what the future of this is.

People are actively using this via the command line option. In fact it
has saved some people that have deployed platforms with mistmatched
DIMM populations where no HMAT autodetection would be possible. It's
also been useful for mitigating other memory interleaving performance
problems that are sensitive to a given address line.

The reason this is still manual is the dearth of platforms that
publish an HMAT, but again the command line option is actively
mitigating performance issues or otherwise allowing for testing a
"pre-aged" memory allocator free list.