hc
2024-11-01 2f529f9b558ca1c1bd74be7437a84e4711743404
kernel/arch/x86/include/asm/pgtable.h
....@@ -137,6 +137,7 @@
137137 static inline void write_pkru(u32 pkru)
138138 {
139139 struct pkru_state *pk;
140
+ unsigned long flags;
140141
141142 if (!boot_cpu_has(X86_FEATURE_OSPKE))
142143 return;
....@@ -148,11 +149,11 @@
148149 * written to the CPU. The FPU restore on return to userland would
149150 * otherwise load the previous value again.
150151 */
151
- fpregs_lock();
152
+ flags = fpregs_lock();
152153 if (pk)
153154 pk->pkru = pkru;
154155 __write_pkru(pkru);
155
- fpregs_unlock();
156
+ fpregs_unlock(flags);
156157 }
157158
158159 static inline int pte_young(pte_t pte)