Re: [PATCH v3] x86: treat pkey-0 special

From: Dave Hansen
Date: Thu Mar 15 2018 - 13:32:04 EST


On 03/15/2018 10:21 AM, Ram Pai wrote:
> On Thu, Mar 15, 2018 at 08:55:31AM -0700, Dave Hansen wrote:
>> On 03/15/2018 02:46 AM, Thomas Gleixner wrote:
>>>> + if (!pkey || !mm_pkey_is_allocated(mm, pkey))
>>> Why this extra check? mm_pkey_is_allocated(mm, 0) should not return true
>>> ever. If it does, then this wants to be fixed.
>> I was thinking that we _do_ actually want it to seem allocated. It just
>> get "allocated" implicitly when an mm is created. I think that will
>> simplify the code if we avoid treating it specially in as many places as
>> possible.
> I think, the logic that makes pkey-0 special must to go
> in arch-neutral code. How about checking for pkey-0 in sys_pkey_free()
> itself?

This is for protection against shooting yourself in the foot? Yes, that
can go in sys_pkey_free().

Does this need manpage and/or selftests updates?