Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751967AbbEGTWh (ORCPT ); Thu, 7 May 2015 15:22:37 -0400 Received: from e06smtp16.uk.ibm.com ([195.75.94.112]:38309 "EHLO e06smtp16.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751279AbbEGTWe (ORCPT ); Thu, 7 May 2015 15:22:34 -0400 Message-ID: <554BBB74.70706@de.ibm.com> Date: Thu, 07 May 2015 21:22:28 +0200 From: Christian Borntraeger User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Dave Hansen , Ingo Molnar CC: linux-kernel@vger.kernel.org, x86@kernel.org, linux-s390 Subject: Re: [PATCH 00/12] [RFC] x86: Memory Protection Keys References: <20150507174132.34AF8FAF@viggo.jf.intel.com> <20150507175707.GA22172@gmail.com> <554BAA68.6000508@sr71.net> In-Reply-To: <554BAA68.6000508@sr71.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15050719-0025-0000-0000-00000509D16E Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1537 Lines: 31 Am 07.05.2015 um 20:09 schrieb Dave Hansen: > On 05/07/2015 10:57 AM, Ingo Molnar wrote: >>>> There are two new instructions (RDPKRU/WRPKRU) for reading and >>>> writing to the new register. The feature is only available in >>>> 64-bit mode, even though there is theoretically space in the PAE >>>> PTEs. These permissions are enforced on data access only and have >>>> no effect on instruction fetches. >> So I'm wondering what the primary usecases are for this feature? >> Could you outline applications/workloads/libraries that would >> benefit from this? > > There are lots of things that folks would _like_ to mprotect(), but end > up not being feasible because of the overhead of going and mucking with > thousands of PTEs and shooting down remote TLBs every time you want to > change protections. These protection bits would need to be cached in TLBs as well, no? So the saving would come by switching the PKRU instead of the page bits. This all looks like s390 storage keys (with the key in pagetables instead of a dedicated place). There we also have 16 values for the key and 4 bits in the PSW that describe the thread local key both are matched. There is an additional field F (fetch protection) that decides, if the key value is used for stores or for stores+fetches. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/