Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 807f0ccf authored by Naoya Horiguchi's avatar Naoya Horiguchi Committed by Linus Torvalds
Browse files

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: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Acked-by: default avatarWu Fengguang <fengguang.wu@intel.com>
Reviewed-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: default avatarKOSAKI 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: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent e873c49f
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -98,6 +98,7 @@
#define KPF_HWPOISON		19
#define KPF_NOPAGE		20
#define KPF_KSM			21
#define KPF_THP			22

/* [32-] kernel hacking assistances */
#define KPF_RESERVED		32
@@ -147,6 +148,7 @@ static const char *page_flag_names[] = {
	[KPF_HWPOISON]		= "X:hwpoison",
	[KPF_NOPAGE]		= "n:nopage",
	[KPF_KSM]		= "x:ksm",
	[KPF_THP]		= "t:thp",

	[KPF_RESERVED]		= "r:reserved",
	[KPF_MLOCKED]		= "m:mlocked",
+4 −0
Original line number Diff line number Diff line
@@ -60,6 +60,7 @@ There are three components to pagemap:
    19. HWPOISON
    20. NOPAGE
    21. KSM
    22. THP

Short descriptions to the page flags:

@@ -97,6 +98,9 @@ Short descriptions to the page flags:
21. KSM
    identical memory pages dynamically shared between one or more processes

22. THP
    contiguous pages which construct transparent hugepages

    [IO related page flags]
 1. ERROR     IO error occurred
 3. UPTODATE  page has up-to-date data