On Mon, Jul 10, 2017 at 11:13:23AM +0530, Anshuman Khandual wrote: > On 07/06/2017 02:51 AM, Ram Pai wrote: > > Memory protection keys enable applications to protect its > > address space from inadvertent access or corruption from > > itself. > > > > The overall idea: > > > > A process allocates a key and associates it with > > an address range within its address space. > > The process then can dynamically set read/write > > permissions on the key without involving the > > kernel. Any code that violates the permissions > > of the address space; as defined by its associated > > key, will receive a segmentation fault. > > > > This patch series enables the feature on PPC64 HPTE > > platform. > > > > ISA3.0 section 5.7.13 describes the detailed specifications. > > > > > > Testing: > > This patch series has passed all the protection key > > tests available in the selftests directory. > > The tests are updated to work on both x86 and powerpc. > > > > version v5: > > (1) reverted back to the old design -- store the > > key in the pte, instead of bypassing it. > > The v4 design slowed down the hash page path. > > (2) detects key violation when kernel is told to > > access user pages. > > (3) further refined the patches into smaller consumable > > units > > (4) page faults handlers captures the faulting key > > from the pte instead of the vma. This closes a > > race between where the key update in the vma and > > a key fault caused cause by the key programmed > > in the pte. > > (5) a key created with access-denied should > > also set it up to deny write. Fixed it. > > (6) protection-key number is displayed in smaps > > the x86 way. > > Hello Ram, > > This patch series has now grown a lot. Do you have this > hosted some where for us to pull and test it out ? BTW https://github.com/rampai/memorykeys.git branch memkey.v5.3 > do you have data points to show the difference in > performance between this version and the last one where > we skipped the bits from PTE and directly programmed the > HPTE entries looking into VMA bits. No. I dont. I am hoping you can help me out with this. RP