summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Kiss <daniel.kiss@arm.com>2020-03-16 19:50:54 +0300
committerCatalin Marinas <catalin.marinas@arm.com>2020-03-16 20:19:50 +0300
commit424037b77519d1537872442ba144dda1464988d7 (patch)
tree5d79baec7fddee62da9dc29c75498fcb8244f1c9
parentde48bb369242fe17022fab3a2addc9c6dacad43f (diff)
downloadlinux-424037b77519d1537872442ba144dda1464988d7.tar.xz
mm: smaps: Report arm64 guarded pages in smaps
The arm64 Branch Target Identification support is activated by marking executable pages as guarded pages. Report pages mapped this way in smaps to aid diagnostics. Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Daniel Kiss <daniel.kiss@arm.com> Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
-rw-r--r--Documentation/filesystems/proc.txt1
-rw-r--r--fs/proc/task_mmu.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt
index 99ca040e3f90..ed5465d0f435 100644
--- a/Documentation/filesystems/proc.txt
+++ b/Documentation/filesystems/proc.txt
@@ -519,6 +519,7 @@ manner. The codes are the following:
hg - huge page advise flag
nh - no-huge page advise flag
mg - mergable advise flag
+ bt - arm64 BTI guarded page
Note that there is no guarantee that every flag and associated mnemonic will
be present in all further kernel releases. Things get changed, the flags may
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 3ba9ae83bff5..1e3409c484d1 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -668,6 +668,9 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
[ilog2(VM_ARCH_1)] = "ar",
[ilog2(VM_WIPEONFORK)] = "wf",
[ilog2(VM_DONTDUMP)] = "dd",
+#ifdef CONFIG_ARM64_BTI
+ [ilog2(VM_ARM64_BTI)] = "bt",
+#endif
#ifdef CONFIG_MEM_SOFT_DIRTY
[ilog2(VM_SOFTDIRTY)] = "sd",
#endif