>From dd986c5aab4f6ccf41cc8d2dde5d9702a17adb6f Mon Sep 17 00:00:00 2001 From: "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxx> Date: Mon, 6 Jun 2022 10:14:17 +0530 Subject: [PATCH] mm/demotion: Add sysfs ABI documentation Add sysfs ABI documentation. Suggested-by: Wei Xu <weixugc@xxxxxxxxxx> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxx> --- .../ABI/testing/sysfs-kernel-mm-memory-tiers | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-kernel-mm-memory-tiers diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-memory-tiers b/Documentation/ABI/testing/sysfs-kernel-mm-memory-tiers new file mode 100644 index 000000000000..41b0d1756ddb --- /dev/null +++ b/Documentation/ABI/testing/sysfs-kernel-mm-memory-tiers @@ -0,0 +1,81 @@ +What: /sys/devices/system/memtier/ +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + This is the directory containing the information about memory tiers. + + Each memory tier has its own subdirectory. + + The order of memory tiers is determined by their rank values, not by + their memtier device names. A higher rank value means a higher tier. + +What: /sys/devices/system/memtier/default_tier +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + The default memory tier to which memory would get added via hotplug + if the NUMA node is not part of any memory tier. + +What: /sys/devices/system/memtier/max_tier +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + The max memory tier device ID we can create. Users can create memory + tiers in range [0 - max_tier) + +What: /sys/devices/system/memtier/memtierN/ +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + This is the directory containing the information about a particular + memory tier, memtierN, where N is the memtier device ID (e.g. 0, 1). + + The memtier device ID number itself is just an identifier and has no + special meaning, i.e. memtier device ID numbers do not determine the + order of memory tiers. + +What: /sys/devices/system/memtier/memtierN/rank +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + + When read, list the "rank" value associated with memtierN. + + "Rank" is an opaque value. Its absolute value doesn't have any + special meaning. But the rank values of different memtiers can be + compared with each other to determine the memory tier order. + + For example, if we have 3 memtiers: memtier0, memtier1, memiter2, and + their rank values are 100, 10, 50, then the memory tier order is: + memtier0 -> memtier2 -> memtier1, where memtier0 is the highest tier + and memtier1 is the lowest tier. + + The rank value of each memtier should be unique. + +What: /sys/devices/system/memtier/memtierN/nodelist +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + + When read, list the memory nodes in the specified tier. + +What: /sys/devices/system/node/nodeN/memtier +Date: Jun 2022 +Contact: Linux memory management mailing list <linux-mm@xxxxxxxxx> +Description: Interface for tiered memory + + When read, list the device ID of the memory tier that the node belongs + to. Its value is empty for a CPU-only NUMA node. + + When written, the kernel moves the node into the specified memory + tier if the move is allowed. The tier assignments of all other + nodes are not affected. + + When written with the special string "none" the specific node is removed + from participating in memory demotion. -- 2.36.1