| .. | .. |
|---|
| 137 | 137 | static inline void write_pkru(u32 pkru) |
|---|
| 138 | 138 | { |
|---|
| 139 | 139 | struct pkru_state *pk; |
|---|
| 140 | + unsigned long flags; |
|---|
| 140 | 141 | |
|---|
| 141 | 142 | if (!boot_cpu_has(X86_FEATURE_OSPKE)) |
|---|
| 142 | 143 | return; |
|---|
| .. | .. |
|---|
| 148 | 149 | * written to the CPU. The FPU restore on return to userland would |
|---|
| 149 | 150 | * otherwise load the previous value again. |
|---|
| 150 | 151 | */ |
|---|
| 151 | | - fpregs_lock(); |
|---|
| 152 | + flags = fpregs_lock(); |
|---|
| 152 | 153 | if (pk) |
|---|
| 153 | 154 | pk->pkru = pkru; |
|---|
| 154 | 155 | __write_pkru(pkru); |
|---|
| 155 | | - fpregs_unlock(); |
|---|
| 156 | + fpregs_unlock(flags); |
|---|
| 156 | 157 | } |
|---|
| 157 | 158 | |
|---|
| 158 | 159 | static inline int pte_young(pte_t pte) |
|---|