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? RP