Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1438772
| From | Dave Hansen <dave@sr71.net> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls |
| Date | 2016-07-07 19:40 +0200 |
| Message-ID | <rSlrk-1Bj-19@gated-at.bofh.it> (permalink) |
| References | <rSgUF-6Xx-15@gated-at.bofh.it> <rSgUF-6Xx-13@gated-at.bofh.it> <rSiMN-8hI-15@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 07/07/2016 07:45 AM, Mel Gorman wrote: > On Thu, Jul 07, 2016 at 05:47:28AM -0700, Dave Hansen wrote: >> > >> > From: Dave Hansen <dave.hansen@linux.intel.com> >> > >> > This establishes two more system calls for protection key management: >> > >> > unsigned long pkey_get(int pkey); >> > int pkey_set(int pkey, unsigned long access_rights); >> > >> > The return value from pkey_get() and the 'access_rights' passed >> > to pkey_set() are the same format: a bitmask containing >> > PKEY_DENY_WRITE and/or PKEY_DENY_ACCESS, or nothing set at all. >> > >> > These can replace userspace's direct use of the new rdpkru/wrpkru >> > instructions. ... > This one feels like something that can or should be implemented in > glibc. I generally agree, except that glibc doesn't have any visibility into whether a pkey is currently valid or not. > There is no real enforcement of the values yet looking them up or > setting them takes mmap_sem for write. There are checks for mm_pkey_is_allocated(). That's the main thing these syscalls add on top of the raw instructions. > Applications that frequently get > called will get hammed into the ground with serialisation on mmap_sem > not to mention the cost of the syscall entry/exit. I think we can do both of them without mmap_sem, as long as we resign ourselves to this just being fundamentally racy (which it is already, I think). But, is it worth performance-tuning things that we don't expect performance-sensitive apps to be using in the first place? They'll just use the RDPKRU/WRPKRU instructions directly. Ingo, do you still feel strongly that these syscalls (pkey_set/get()) should be included? Of the 5, they're definitely the two with the weakest justification.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 6/9] x86, pkeys: add pkey set/get syscalls Dave Hansen <dave@sr71.net> - 2016-07-07 14:50 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Mel Gorman <mgorman@techsingularity.net> - 2016-07-07 16:50 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Dave Hansen <dave@sr71.net> - 2016-07-07 19:40 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Ingo Molnar <mingo@kernel.org> - 2016-07-08 09:20 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Dave Hansen <dave@sr71.net> - 2016-07-08 18:40 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Ingo Molnar <mingo@kernel.org> - 2016-07-09 10:40 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Dave Hansen <dave@sr71.net> - 2016-07-08 21:30 +0200
Re: [PATCH 6/9] x86, pkeys: add pkey set/get syscalls Mel Gorman <mgorman@techsingularity.net> - 2016-07-08 12:30 +0200
csiph-web