Path: csiph.com!news.redatomik.org!aioe.org!bofh.it!news.nic.it!robomod From: Ram Pai Newsgroups: linux.kernel Subject: [PATCH 0/6] mm, x86, powerpc: Memory Protection Keys enhancement Date: Sat, 16 Sep 2017 03:30:02 +0200 Message-ID: Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id; bh=MvoW+5pbVQvNBPXq5hwix1JEwYdvCgZj+7skyLtd3Xo=; b=WgHsYfG5cxQgcELr/p5dtFVJP32UeWqHYF1lxZTWx7e5NW0k4Uw7L1Zn+rXipYVBQM HsisPBmVi9CBfwXyAoh4Sia1Q5e5b2DdxQPk4FN6RWuq0lGzCQb39x6xU6yKD8duAirF w/T6aA88g89iPYAznnDPzGUs/h/kMOiSoDM6ImdF9zZRZg6HiJNqsRgePfnNpOVxmSBo Anekk+C6xV1EQh59Tb9ISikNdSVok8aUPWTlwJVAvH/Wh+MmDt+IoU7+kf4KYowObrkb dBvZRjJb9JE1GPEU6hgj1Udw5PPz3Twxal/V8rPV/SCx0G8vO5ohDOLqHq+Jl3sy/Vco PTqA== X-Google-Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id; bh=MvoW+5pbVQvNBPXq5hwix1JEwYdvCgZj+7skyLtd3Xo=; b=lhp3/BksY8frJESWSnRXhDpadpM5JtX95LWRjSXywl0/mFMrfXQ4lvfbl5LT1cfeIG gZYKSHgBNV0B/5UCJskT7uMXI4ao4szB5Kae92m7iSSqWjYCOk6pDFGJkHPRBdh+ZrqU I99vdrvKobjMyFPZ7pgjsdzLppL7ts8h+nQ3XaYYcZREjHfn7z5ye9+DG+Dmx4ZizgbJ 7CbkB1lXmuGhW2JSTnDM1BcevjYgYxfDBCwBx9jExtw8HEKmLqveOtYUukM2u0x/kop4 wsGzyjTDwV6qwGvmYXEaUP8vWGkeEkGDkkK3wDxtL8qAAoMAMQgJDvt9DCZV8Ee1DVJa Jzmg== X-Gm-Message-State: AHPjjUgUp5hUyRgCwE14oyhyn/gyZt5DYS3eh7iTcZzaNK9ttlLLpW4v SkgHzf+PBFTjh4QRkJM= X-Google-SMTP-Source: AOwi7QDNwK8Of48+0Fiz1bNt3q7945NZBh0uP2PqDyW45lqJ6atfIZO9tF+nOz+Na0S07+OPPoRANg== X-Received: by 10.200.41.218 with SMTP id 26mr7689050qtt.291.1505524889497; Fri, 15 Sep 2017 18:21:29 -0700 (PDT) X-Mailer: git-send-email 1.7.1 Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 70 Organization: linux.* mail to news gateway X-Original-Cc: arnd@arndb.de, akpm@linux-foundation.org, corbet@lwn.net, mingo@redhat.com, benh@kernel.crashing.org, paulus@samba.org, khandual@linux.vnet.ibm.com, aneesh.kumar@linux.vnet.ibm.com, bsingharora@gmail.com, hbabu@us.ibm.com, mhocko@kernel.org, bauerman@linux.vnet.ibm.com, ebiederm@xmission.com, linuxram@us.ibm.com X-Original-Date: Fri, 15 Sep 2017 18:21:04 -0700 X-Original-Message-ID: <1505524870-4783-1-git-send-email-linuxram@us.ibm.com> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1733186 The patch-series enhances memory protection keys feature. The patch(1) introduces an additional vma bit to support 32 pkeys. PowerPC supports 32 pkeys. The patch(2,3) introduces a new interface arch_pkeys_enabled(), this interface can be used by arch-neutral code to display protection key value in smap. The patch(4) introduces a syfs interface, to display the static attributes of the protection key. Eg: max number of keys. The last two patches, (5,6) update documentation. A separate patch series that enhances selftest will follow. The entire patch series that enables pkeys on powerpc is at https://github.com/rampai/memorykeys.git memkey.v9-rc1 Testing: ------- This patches are tested on powerpc platform using a enhaced set of selftests. Could not test on x86 since I do not have access to one with pkey support. History: ------- version v3: (1) sysfs interface - thanks Thiago. (2) Documentation update. version v2: (1) Documentation is updated to better capture the semantics. (2) introduced arch_pkeys_enabled() to find if an arch enables pkeys. Correspond- ing change in logic that displays key value in smaps. (3) code rearranged in many places based on comments from Dave Hansen, Balbir, Anshuman. version v1: Initial version Ram Pai (5): mm: introduce an additional vma bit for powerpc pkey mm, x86 : introduce arch_pkeys_enabled() mm: display pkey in smaps if arch_pkeys_enabled() is true Documentation/x86: Move protecton key documentation to arch neutral directory Documentation/vm: PowerPC specific updates to memory protection keys Thiago Jung Bauermann (1): mm/mprotect, powerpc/mm/pkeys, x86/mm/pkeys: Add sysfs interface Documentation/vm/protection-keys.txt | 160 +++++++++++++++++++++++++++++++++ Documentation/x86/protection-keys.txt | 85 ----------------- arch/powerpc/include/asm/pkeys.h | 2 + arch/powerpc/mm/pkeys.c | 20 ++++ arch/x86/include/asm/mmu_context.h | 4 +- arch/x86/include/asm/pkeys.h | 2 + arch/x86/kernel/fpu/xstate.c | 5 + arch/x86/kernel/setup.c | 8 -- arch/x86/mm/pkeys.c | 8 ++ fs/proc/task_mmu.c | 17 ++-- include/linux/mm.h | 16 ++-- include/linux/pkeys.h | 9 ++ mm/mprotect.c | 88 ++++++++++++++++++ 13 files changed, 317 insertions(+), 107 deletions(-) create mode 100644 Documentation/vm/protection-keys.txt delete mode 100644 Documentation/x86/protection-keys.txt