diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/testing/selftests/x86/protection_keys.c | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/tools/testing/selftests/x86/protection_keys.c b/tools/testing/selftests/x86/protection_keys.c index 555e43ca846b..7a1cc0e56d2d 100644 --- a/tools/testing/selftests/x86/protection_keys.c +++ b/tools/testing/selftests/x86/protection_keys.c | |||
@@ -189,17 +189,29 @@ void lots_o_noops_around_write(int *write_to_me) | |||
189 | #define u64 uint64_t | 189 | #define u64 uint64_t |
190 | 190 | ||
191 | #ifdef __i386__ | 191 | #ifdef __i386__ |
192 | #define SYS_mprotect_key 380 | 192 | |
193 | #define SYS_pkey_alloc 381 | 193 | #ifndef SYS_mprotect_key |
194 | #define SYS_pkey_free 382 | 194 | # define SYS_mprotect_key 380 |
195 | #endif | ||
196 | #ifndef SYS_pkey_alloc | ||
197 | # define SYS_pkey_alloc 381 | ||
198 | # define SYS_pkey_free 382 | ||
199 | #endif | ||
195 | #define REG_IP_IDX REG_EIP | 200 | #define REG_IP_IDX REG_EIP |
196 | #define si_pkey_offset 0x14 | 201 | #define si_pkey_offset 0x14 |
202 | |||
197 | #else | 203 | #else |
198 | #define SYS_mprotect_key 329 | 204 | |
199 | #define SYS_pkey_alloc 330 | 205 | #ifndef SYS_mprotect_key |
200 | #define SYS_pkey_free 331 | 206 | # define SYS_mprotect_key 329 |
207 | #endif | ||
208 | #ifndef SYS_pkey_alloc | ||
209 | # define SYS_pkey_alloc 330 | ||
210 | # define SYS_pkey_free 331 | ||
211 | #endif | ||
201 | #define REG_IP_IDX REG_RIP | 212 | #define REG_IP_IDX REG_RIP |
202 | #define si_pkey_offset 0x20 | 213 | #define si_pkey_offset 0x20 |
214 | |||
203 | #endif | 215 | #endif |
204 | 216 | ||
205 | void dump_mem(void *dumpme, int len_bytes) | 217 | void dump_mem(void *dumpme, int len_bytes) |