On 03/26/2018 07:27 PM, Ram Pai wrote: >> This is a bit nicer than what Ram proposed because it is simpler >> and removes special-casing for pkey 0. On the other hand, it does >> allow applciations to pkey_free() pkey-0, but that's just a silly >> thing to do, so we are not going to protect against it. > The more I think about this, the more I feel we are opening up a can > of worms. I am ok with a bad application, shooting itself in its feet. > But I am worried about all the bug reports and support requests we > will encounter when applications inadvertently shoot themselves > and blame it on the kernel. > > a warning in dmesg logs indicating a free-of-pkey-0 can help deflect > the blame from the kernel. I think it's OK to leave it. A legit, very careful app could decide not to use pkey 0. It might even be fun to write that in the selftests for sheer entertainment value. Although, it _could_ be a bit more debuggable than it is now. A tracepoint that dumps out the pkey that got faulted on along with the PKRU value at fault time might be nice to have. That's mildly difficult to do from outside the app.