Commit 8d2882a8 authored by Oscar Salvador's avatar Oscar Salvador Committed by Andrew Morton
Browse files

mm,memory_hotplug: remove status_change_nid_normal and update documentation

Now that the last user of status_change_nid_normal is gone, we can remove
it.  Update documentation accordingly.

Link: https://lkml.kernel.org/r/20250616135158.450136-3-osalvador@suse.de


Signed-off-by: default avatarOscar Salvador <osalvador@suse.de>
Reviewed-by: default avatarVlastimil Babka <vbabka@suse.cz>
Acked-by: default avatarDavid Hildenbrand <david@redhat.com>
Cc: Harry Yoo <harry.yoo@oracle.com>
Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com>
Cc: Joanthan Cameron <Jonathan.Cameron@huawei.com>
Cc: Rakie Kim <rakie.kim@sk.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 1bf47d41
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -56,14 +56,11 @@ The third argument (arg) passes a pointer of struct memory_notify::
	struct memory_notify {
		unsigned long start_pfn;
		unsigned long nr_pages;
		int status_change_nid_normal;
		int status_change_nid;
	}

- start_pfn is start_pfn of online/offline memory.
- nr_pages is # of pages of online/offline memory.
- status_change_nid_normal is set node id when N_NORMAL_MEMORY of nodemask
  is (will be) set/clear, if this is -1, then nodemask status is not changed.
- status_change_nid is set node id when N_MEMORY of nodemask is (will be)
  set/clear. It means a new(memoryless) node gets new memory by online and a
  node loses all memory. If this is -1, then nodemask status is not changed.
+0 −3
Original line number Diff line number Diff line
@@ -62,7 +62,6 @@ memory_notify结构体的指针::
	struct memory_notify {
		unsigned long start_pfn;
		unsigned long nr_pages;
		int status_change_nid_normal;
		int status_change_nid;
	}

@@ -70,8 +69,6 @@ memory_notify结构体的指针::

- nr_pages是在线/离线内存的页数。

- status_change_nid_normal是当nodemask的N_NORMAL_MEMORY被设置/清除时设置节
  点id,如果是-1,则nodemask状态不改变。

- status_change_nid是当nodemask的N_MEMORY被(将)设置/清除时设置的节点id。这
  意味着一个新的(没上线的)节点通过联机获得新的内存,而一个节点失去了所有的内
+0 −1
Original line number Diff line number Diff line
@@ -109,7 +109,6 @@ struct memory_notify {
	unsigned long altmap_nr_pages;
	unsigned long start_pfn;
	unsigned long nr_pages;
	int status_change_nid_normal;
	int status_change_nid;
};

+0 −12
Original line number Diff line number Diff line
@@ -706,19 +706,13 @@ static void node_states_check_changes_online(unsigned long nr_pages,
	int nid = zone_to_nid(zone);

	arg->status_change_nid = NUMA_NO_NODE;
	arg->status_change_nid_normal = NUMA_NO_NODE;

	if (!node_state(nid, N_MEMORY))
		arg->status_change_nid = nid;
	if (zone_idx(zone) <= ZONE_NORMAL && !node_state(nid, N_NORMAL_MEMORY))
		arg->status_change_nid_normal = nid;
}

static void node_states_set_node(int node, struct memory_notify *arg)
{
	if (arg->status_change_nid_normal >= 0)
		node_set_state(node, N_NORMAL_MEMORY);

	if (arg->status_change_nid >= 0)
		node_set_state(node, N_MEMORY);
}
@@ -1894,7 +1888,6 @@ static void node_states_check_changes_offline(unsigned long nr_pages,
	enum zone_type zt;

	arg->status_change_nid = NUMA_NO_NODE;
	arg->status_change_nid_normal = NUMA_NO_NODE;

	/*
	 * Check whether node_states[N_NORMAL_MEMORY] will be changed.
@@ -1906,8 +1899,6 @@ static void node_states_check_changes_offline(unsigned long nr_pages,
	 */
	for (zt = 0; zt <= ZONE_NORMAL; zt++)
		present_pages += pgdat->node_zones[zt].present_pages;
	if (zone_idx(zone) <= ZONE_NORMAL && nr_pages >= present_pages)
		arg->status_change_nid_normal = zone_to_nid(zone);

	/*
	 * We have accounted the pages from [0..ZONE_NORMAL); ZONE_HIGHMEM
@@ -1926,9 +1917,6 @@ static void node_states_check_changes_offline(unsigned long nr_pages,

static void node_states_clear_node(int node, struct memory_notify *arg)
{
	if (arg->status_change_nid_normal >= 0)
		node_clear_state(node, N_NORMAL_MEMORY);

	if (arg->status_change_nid >= 0)
		node_clear_state(node, N_MEMORY);
}