Re: [PATCH 0/2] Implement numa node notifier

Jonathan Cameron
2025-04-03T12:30:06Z

On Tue, 1 Apr 2025 11:27:14 +0200
Oscar Salvador <osalvador@suse.de> wrote:

> Memory notifier is a tool that allow consumers to get notified whenever
> memory gets onlined or offlined in the system.
> Currently, there are 10 consumers of that, but 5 out of those 10 consumers
> are only interested in getting notifications when a numa node has changed its
> state.
> That means going from memoryless to memory-aware of vice versa.
>
> Which means that for every {online,offline}_pages operation they get
> notified even though the numa node might not have changed its state.
>
> The first patch implements a numa node notifier that does just that, and have
> those consumers register in there, so they get notified only when they are
> interested.
>
> The second patch replaces 'status_change_normal{_normal}' fields within
> memory_notify with a 'nid', as that is only what we need for memory
> notifer and update the only user of it (page_ext).
>
> Consumers that are only interested in numa node states change are:
>
> - memory-tier
> - slub
> - cpuset
> - hmat
> - cxl
>
Hi Oscar,

Idea seems good to me.

+CC linux-cxl for information of others not on the thread.

>
> Oscar Salvador (2):
> mm,memory_hotplug: Implement numa node notifier
> mm,memory_hotplug: Replace status_change_nid parameter in
> memory_notify
>
> drivers/acpi/numa/hmat.c | 6 +--
> drivers/base/node.c | 19 +++++++++
> drivers/cxl/core/region.c | 14 +++----
> drivers/cxl/cxl.h | 4 +-
> include/linux/memory.h | 37 ++++++++++++++++++
> kernel/cgroup/cpuset.c | 2 +-
> mm/memory-tiers.c | 8 ++--
> mm/memory_hotplug.c | 82 +++++++++++++++++++++++++++++----------
> mm/page_ext.c | 12 +-----
> mm/slub.c | 22 +++++------
> 10 files changed, 146 insertions(+), 60 deletions(-)
>