2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00

pagemap: document KPF_THP and make page-types aware of it

page-types, which is a common user of pagemap, gets aware of thp with this
patch.  This helps system admins and kernel hackers know about how thp
works.  Here is a sample output of page-types over a thp:

  $ page-types -p <pid> --raw --list

  voffset offset  len     flags
  ...
  7f9d40200       3f8400  1       ___U_lA____Ma_bH______t____________
  7f9d40201       3f8401  1ff     ________________T_____t____________

               flags      page-count       MB  symbolic-flags                     long-symbolic-flags
  0x0000000000410000             511        1  ________________T_____t____________        compound_tail,thp
  0x000000000040d868               1        0  ___U_lA____Ma_bH______t____________        uptodate,lru,active,mmap,anonymous,swapbacked,compound_head,thp

Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Acked-by: Wu Fengguang <fengguang.wu@intel.com>
Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Naoya Horiguchi 2012-03-21 16:33:58 -07:00 committed by Linus Torvalds
parent e873c49fbf
commit 807f0ccfe1
2 changed files with 6 additions and 0 deletions

View File

@ -98,6 +98,7 @@
#define KPF_HWPOISON 19 #define KPF_HWPOISON 19
#define KPF_NOPAGE 20 #define KPF_NOPAGE 20
#define KPF_KSM 21 #define KPF_KSM 21
#define KPF_THP 22
/* [32-] kernel hacking assistances */ /* [32-] kernel hacking assistances */
#define KPF_RESERVED 32 #define KPF_RESERVED 32
@ -147,6 +148,7 @@ static const char *page_flag_names[] = {
[KPF_HWPOISON] = "X:hwpoison", [KPF_HWPOISON] = "X:hwpoison",
[KPF_NOPAGE] = "n:nopage", [KPF_NOPAGE] = "n:nopage",
[KPF_KSM] = "x:ksm", [KPF_KSM] = "x:ksm",
[KPF_THP] = "t:thp",
[KPF_RESERVED] = "r:reserved", [KPF_RESERVED] = "r:reserved",
[KPF_MLOCKED] = "m:mlocked", [KPF_MLOCKED] = "m:mlocked",

View File

@ -60,6 +60,7 @@ There are three components to pagemap:
19. HWPOISON 19. HWPOISON
20. NOPAGE 20. NOPAGE
21. KSM 21. KSM
22. THP
Short descriptions to the page flags: Short descriptions to the page flags:
@ -97,6 +98,9 @@ Short descriptions to the page flags:
21. KSM 21. KSM
identical memory pages dynamically shared between one or more processes identical memory pages dynamically shared between one or more processes
22. THP
contiguous pages which construct transparent hugepages
[IO related page flags] [IO related page flags]
1. ERROR IO error occurred 1. ERROR IO error occurred
3. UPTODATE page has up-to-date data 3. UPTODATE page has up-to-date data