[PATCH v13 0/3] mm, x86, powerpc: Enhancements to Memory Protection Keys.

Ram Pai linuxram at us.ibm.com
Sat May 5 07:59:40 AEST 2018


This patch series provides arch-neutral enhancements to
enable memory-keys on new architecutes, and the corresponding
changes in x86 and powerpc specific code to support that.

a) Provides ability to support upto 32 keys.  PowerPC
        can handle 32 keys and hence needs this.

b) Arch-neutral code; and not the arch-specific code,
   determines the format of the string, that displays the key
   for each vma in smaps.

History:
-------
version 14:
	(1) made VM_PKEY_BIT4 unusable on x86, #defined it to 0
		-- comment by Dave Hansen
	(2) due to some reason this patch series continue to
	      break some or the other build. The last series
	      passed everything but created a merge
	      conflict followed by build failure for
	      Michael Ellermen. :(

version v13:
	(1) fixed a git bisect error. :(

version v12:
	(1) fixed compilation errors seen with various x86
	    configs.
version v11:
	(1) code that displays key in smaps is not any more
	    defined under CONFIG_ARCH_HAS_PKEYS.
		- Comment by Eric W. Biederman and Michal Hocko
	(2) merged two patches that implemented (1).
		- comment by Michal Hocko

version prior to v11:
	(1) used one additional bit from VM_HIGH_ARCH_*
		to support 32 keys.
		- Suggestion by Dave Hansen.
	(2) powerpc specific changes to support memory keys.


Ram Pai (3):
  mm, powerpc, x86: define VM_PKEY_BITx bits if CONFIG_ARCH_HAS_PKEYS
    is enabled
  mm, powerpc, x86: introduce an additional vma bit for powerpc pkey
  mm, x86, powerpc: display pkey in smaps only if arch supports pkeys

 arch/powerpc/include/asm/mmu_context.h |    5 -----
 arch/powerpc/include/asm/pkeys.h       |    2 ++
 arch/x86/include/asm/mmu_context.h     |    5 -----
 arch/x86/include/asm/pkeys.h           |    1 +
 arch/x86/kernel/fpu/xstate.c           |    5 +++++
 arch/x86/kernel/setup.c                |    8 --------
 fs/proc/task_mmu.c                     |   16 +++++++++-------
 include/linux/mm.h                     |   15 +++++++++++----
 include/linux/pkeys.h                  |    7 ++++++-
 9 files changed, 34 insertions(+), 30 deletions(-)



More information about the Linuxppc-dev mailing list