On 5/11/21 8:59 AM, Jon Kohler wrote: > diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h > index b1099f2d9800..20f1fb8be7ef 100644 > --- a/arch/x86/include/asm/pgtable.h > +++ b/arch/x86/include/asm/pgtable.h > @@ -151,7 +151,7 @@ static inline void write_pkru(u32 pkru) > fpregs_lock(); > if (pk) > pk->pkru = pkru; > - __write_pkru(pkru); > + wrpkru(pkru); > fpregs_unlock(); > } This removes the: if (pkru == rdpkru()) return; optimization from a couple of write_pkru() users: arch_set_user_pkey_access() and copy_init_pkru_to_fpregs(). Was that intentional? Those aren't the hottest paths in the kernel, but copy_init_pkru_to_fpregs() is used in signal handling and exeve().