The memory protection keys feature was
added to the 4.6 kernel in 2016; it allows user space to group pages into
“protection domains” that can have their access restricted independently of
the normal page protections. There is no equivalent feature for kernel
space; access to memory in the kernel’s portion of the address space is
controlled exclusively by the page protections. That situation maybe about
to change, though, as a result of the protection
keys supervisor (PKS) patch set posted by Ira Weiny (with many patches
written by Fenghua Yu).
Source: LWN.net – [$] Memory protection keys for the kernel