Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1411460
| From | Jonathan Corbet <corbet@lwn.net> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls |
| Date | 2016-06-01 20:40 +0200 |
| Message-ID | <rFjdE-3CV-9@gated-at.bofh.it> (permalink) |
| References | <rETMd-4rJ-3@gated-at.bofh.it> <rETMd-4rJ-5@gated-at.bofh.it> |
| Organization | LWN.net |
Sorry, I have one more obnoxious question...
> +static inline
> +int mm_pkey_free(struct mm_struct *mm, int pkey)
> +{
> + /*
> + * pkey 0 is special, always allocated and can never
> + * be freed.
> + */
> + if (!pkey || !validate_pkey(pkey))
> + return -EINVAL;
> + if (!mm_pkey_is_allocated(mm, pkey))
> + return -EINVAL;
> +
> + mm_set_pkey_free(mm, pkey);
> +
> + return 0;
> +}
If I read this right, it doesn't actually remove any pkey restrictions
that may have been applied while the key was allocated. So there could be
pages with that key assigned that might do surprising things if the key is
reallocated for another use later, right? Is that how the API is intended
to work?
Thanks,
jon
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 0/8] System Calls for Memory Protection Keys Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
[PATCH 5/8] x86, pkeys: allocation/free syscalls Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Jonathan Corbet <corbet@lwn.net> - 2016-06-01 20:40 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Dave Hansen <dave@sr71.net> - 2016-06-01 21:40 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-06-02 02:20 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Dave Hansen <dave@sr71.net> - 2016-06-02 02:20 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-06-03 02:30 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Dave Hansen <dave@sr71.net> - 2016-06-03 19:30 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls "Michael Kerrisk (man-pages)" <mtk.manpages@gmail.com> - 2016-06-03 21:50 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Arnd Bergmann <arnd@arndb.de> - 2016-06-02 13:50 +0200
Re: [PATCH 5/8] x86, pkeys: allocation/free syscalls Dave Hansen <dave@sr71.net> - 2016-06-02 23:20 +0200
[PATCH 4/8] x86: wire up mprotect_key() system call Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
[PATCH 3/8] x86, pkeys: make mprotect_key() mask off additional vm_flags Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
[PATCH 7/8] pkeys: add details of system call use to Documentation/ Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
Re: [PATCH 7/8] pkeys: add details of system call use to Documentation/ Jonathan Corbet <corbet@lwn.net> - 2016-06-01 18:50 +0200
Re: [PATCH 7/8] pkeys: add details of system call use to Documentation/ Dave Hansen <dave@sr71.net> - 2016-06-01 18:50 +0200
Re: [PATCH 7/8] pkeys: add details of system call use to Documentation/ Jonathan Corbet <corbet@lwn.net> - 2016-06-01 19:00 +0200
Re: [PATCH 7/8] pkeys: add details of system call use to Documentation/ Dave Hansen <dave@sr71.net> - 2016-06-01 19:20 +0200
[PATCH 6/8] x86, pkeys: add pkey set/get syscalls Dave Hansen <dave@sr71.net> - 2016-05-31 17:30 +0200
[PATCH 2/8] mm: implement new pkey_mprotect() system call Dave Hansen <dave@sr71.net> - 2016-05-31 17:40 +0200
[PATCH 1/8] x86, pkeys: add fault handling for PF_PK page fault bit Dave Hansen <dave@sr71.net> - 2016-05-31 17:40 +0200
csiph-web