From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752707AbdKJGMK (ORCPT ); Fri, 10 Nov 2017 01:12:10 -0500 Received: from mail-wm0-f68.google.com ([74.125.82.68]:53742 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750860AbdKJGMI (ORCPT ); Fri, 10 Nov 2017 01:12:08 -0500 X-Google-Smtp-Source: AGs4zMZQVvsCyj3KLO4g5ryTdzjzonbQlS4fG/hwGjmQbXCzjhXNFCDFbwAOpBlHuwORZIsvhh/pvA== Date: Fri, 10 Nov 2017 07:12:04 +0100 From: Ingo Molnar To: Dave Hansen Cc: linux-kernel@vger.kernel.org, x86@kernel.org, Andy Lutomirski , Thomas Gleixner , "H. Peter Anvin" Subject: Re: [PATCH] x86, pkeys: update documentation about availability Message-ID: <20171110061203.bxi7pn5ksk4yggg4@gmail.com> References: <20171109191249.B63E9BDB@viggo.jf.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20171109191249.B63E9BDB@viggo.jf.intel.com> User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Dave Hansen wrote: > > From: Dave Hansen > > Now that CPUs that implement Memory Protection Keys are publicly > available we can be a bit less oblique about where it is available. > > Signed-off-by: Dave Hansen > --- > > b/Documentation/x86/protection-keys.txt | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff -puN Documentation/x86/protection-keys.txt~pkeys-update Documentation/x86/protection-keys.txt > --- a/Documentation/x86/protection-keys.txt~pkeys-update 2017-11-09 10:36:53.381467202 -0800 > +++ b/Documentation/x86/protection-keys.txt 2017-11-09 10:43:15.527466249 -0800 > @@ -1,5 +1,10 @@ > -Memory Protection Keys for Userspace (PKU aka PKEYs) is a CPU feature > -which will be found on future Intel CPUs. > +Memory Protection Keys for Userspace (PKU aka PKEYs) is a feature > +which is found on Intel's Skylake "Scalable Processor" Server CPUs. > +It will be avalable in future non-server parts. > + > +For anyone wishing to test or use this feature, it is available in > +Amazon's EC2 C5 instances and is known to work there using an Ubuntu > +17.04 image. > > Memory Protection Keys provides a mechanism for enforcing page-based > protections, but without requiring modification of the page tables Could we please first fix the pkeys self-test? One of the testcases doesn't build at all: gcc -m32 -o /home/mingo/tip/tools/testing/selftests/x86/protection_keys_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie protection_keys.c -lrt -ldl -lm In file included from /usr/include/signal.h:57:0, from protection_keys.c:33: protection_keys.c: In function ‘signal_handler’: protection_keys.c:253:6: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘.’ token u64 si_pkey; ^ plus, on a related note, the MPX testcase produces annoying warnings: gcc -m32 -o /home/mingo/tip/tools/testing/selftests/x86/mpx-mini-test_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie mpx-mini-test.c -lrt -ldl -lm mpx-mini-test.c: In function ‘insn_test_failed’: mpx-mini-test.c:1406:3: warning: array subscript is above array bounds [-Warray-bounds] printf("bte[1]: %lx\n", bte->contents[1]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mpx-mini-test.c:1407:3: warning: array subscript is above array bounds [-Warray-bounds] printf("bte[2]: %lx\n", bte->contents[2]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mpx-mini-test.c:1408:3: warning: array subscript is above array bounds [-Warray-bounds] printf("bte[3]: %lx\n", bte->contents[3]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Thanks, Ingo