mm: add last level page table numa info to /proc/pid/numa_pgtable
Subsystems (3)
RFC PATCH v2 1/1 mm: add last level page table numa info to /proc/pid/numa_pgtable
In many data center servers, the shared memory architectures is Non-Uniform Memory Access (NUMA), remote numa node data access often brings a high latency problem, but what we are easy to ignore is that the page table remote numa access, It can also leads to a performance degradation.
So there add a new interface in /proc, This will help developers to get more info about performance issues if they are caused by cross-NUMA.
V1 -> V2
1, As Matthew Wilcox advise, Simplify the codes.
2, Do some codes format fix.
V1: https://lore.kernel.org/linux-mm/[email protected]/T/
Signed-off-by Xin Hao <[email protected]>
--- fs/proc/base.c | 2 ++ fs/proc/internal.h | 1 + fs/proc/task_mmu.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 90 insertions(+)
fs/proc/base.c +2 -0
@@ -3224,6 +3224,7 @@ static const struct pid_entry tgid_base_stuff[] = { REG("maps", S_IRUGO, proc_pid_maps_operations),#ifdef CONFIG_NUMA REG ("numa_maps" ,S_IRUGO , proc_pid_numa_maps_operations), +REG ("numa_pgtable" ,S_IRUGO , proc_pid_numa_pgtable_operations), #endifREG ("mem" ,S_IRUSR |S_IWUSR , proc_mem_operations), LNK("cwd", proc_cwd_link),
@@ -3571,6 +3572,7 @@ static const struct pid_entry tid_base_stuff[] = {#endif #ifdef CONFIG_NUMA REG ("numa_maps" ,S_IRUGO , proc_pid_numa_maps_operations), +REG ("numa_pgtable" ,S_IRUGO , proc_pid_numa_pgtable_operations), #endifREG ("mem" ,S_IRUSR |S_IWUSR , proc_mem_operations), LNK("cwd", proc_cwd_link),
fs/proc/internal.h +1 -0
@@ -296,6 +296,7 @@ struct mm_struct *proc_mem_open(struct inode *inode, unsigned int mode);extern const struct file_operations proc_pid_maps_operations;extern const struct file_operations proc_pid_numa_maps_operations; +extern const struct file_operations proc_pid_numa_pgtable_operations;extern const struct file_operations proc_pid_smaps_operations;extern const struct file_operations proc_pid_smaps_rollup_operations;extern const struct file_operations proc_clear_refs_operations;
fs/proc/task_mmu.c +87 -0
91 lines not on this page · raw message
--
2.31.0