Commit 0c3697118bb4f0991b11dafea038e4457813cae0
Committed by
Linus Torvalds
1 parent
6bee55f94f
Exists in
ti-lsk-linux-4.1.y
and in
10 other branches
Documentation/filesystems/proc.txt: add /proc/pid/numa_maps interface explanation snippet
Add a small section to proc.txt doc in order to document its /proc/pid/numa_maps interface. It does not introduce any functional changes, just documentation. Signed-off-by: Rafael Aquini <aquini@redhat.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 33 additions and 0 deletions Side-by-side Diff
Documentation/filesystems/proc.txt
... | ... | @@ -145,6 +145,8 @@ |
145 | 145 | stack Report full stack trace, enable via CONFIG_STACKTRACE |
146 | 146 | smaps a extension based on maps, showing the memory consumption of |
147 | 147 | each mapping and flags associated with it |
148 | + numa_maps an extension based on maps, showing the memory locality and | |
149 | + binding policy as well as mem usage (in pages) of each mapping. | |
148 | 150 | .............................................................................. |
149 | 151 | |
150 | 152 | For example, to get the status information of a process, all you have to do is |
... | ... | @@ -498,6 +500,37 @@ |
498 | 500 | The /proc/pid/pagemap gives the PFN, which can be used to find the pageflags |
499 | 501 | using /proc/kpageflags and number of times a page is mapped using |
500 | 502 | /proc/kpagecount. For detailed explanation, see Documentation/vm/pagemap.txt. |
503 | + | |
504 | +The /proc/pid/numa_maps is an extension based on maps, showing the memory | |
505 | +locality and binding policy, as well as the memory usage (in pages) of | |
506 | +each mapping. The output follows a general format where mapping details get | |
507 | +summarized separated by blank spaces, one mapping per each file line: | |
508 | + | |
509 | +address policy mapping details | |
510 | + | |
511 | +00400000 default file=/usr/local/bin/app kernelpagesize_kB=4 mapped=1 active=0 N3=1 | |
512 | +00600000 default file=/usr/local/bin/app kernelpagesize_kB=4 anon=1 dirty=1 N3=1 | |
513 | +3206000000 default file=/lib64/ld-2.12.so kernelpagesize_kB=4 mapped=26 mapmax=6 N0=24 N3=2 | |
514 | +320621f000 default file=/lib64/ld-2.12.so kernelpagesize_kB=4 anon=1 dirty=1 N3=1 | |
515 | +3206220000 default file=/lib64/ld-2.12.so kernelpagesize_kB=4 anon=1 dirty=1 N3=1 | |
516 | +3206221000 default kernelpagesize_kB=4 anon=1 dirty=1 N3=1 | |
517 | +3206800000 default file=/lib64/libc-2.12.so kernelpagesize_kB=4 mapped=59 mapmax=21 active=55 N0=41 N3=18 | |
518 | +320698b000 default file=/lib64/libc-2.12.so | |
519 | +3206b8a000 default file=/lib64/libc-2.12.so kernelpagesize_kB=4 anon=2 dirty=2 N3=2 | |
520 | +3206b8e000 default file=/lib64/libc-2.12.so kernelpagesize_kB=4 anon=1 dirty=1 N3=1 | |
521 | +3206b8f000 default kernelpagesize_kB=4 anon=3 dirty=3 active=1 N3=3 | |
522 | +7f4dc10a2000 default kernelpagesize_kB=4 anon=3 dirty=3 N3=3 | |
523 | +7f4dc10b4000 default kernelpagesize_kB=4 anon=2 dirty=2 active=1 N3=2 | |
524 | +7f4dc1200000 default file=/anon_hugepage\040(deleted) huge kernelpagesize_kB=2048 anon=1 dirty=1 N3=1 | |
525 | +7fff335f0000 default stack kernelpagesize_kB=4 anon=3 dirty=3 N3=3 | |
526 | +7fff3369d000 default kernelpagesize_kB=4 mapped=1 mapmax=35 active=0 N3=1 | |
527 | + | |
528 | +Where: | |
529 | +"address" is the starting address for the mapping; | |
530 | +"policy" reports the NUMA memory policy set for the mapping (see vm/numa_memory_policy.txt); | |
531 | +"mapping details" summarizes mapping data such as mapping type, page usage counters, | |
532 | +node locality page counters (N0 == node0, N1 == node1, ...) and the kernel page | |
533 | +size, in KB, that is backing the mapping up. | |
501 | 534 | |
502 | 535 | 1.2 Kernel data |
503 | 536 | --------------- |