[gdb/testsuite] Fix gdb.arch/i386-pkru.exp on linux
authorTom de Vries <tdevries@suse.de>
Wed, 1 Dec 2021 12:51:19 +0000 (13:51 +0100)
committerTom de Vries <tdevries@suse.de>
Wed, 1 Dec 2021 12:51:19 +0000 (13:51 +0100)
commita561456f2d426ae8ca9b8c41086cf846f334a9cd
tree944bc37edd7584963de688064e9b6e6932d803ad
parent92fc129e2b0066706ee8971d311f2c507ce38d4b
[gdb/testsuite] Fix gdb.arch/i386-pkru.exp on linux

When running test-case gdb.arch/i386-pkru.exp on a machine with "Memory
Protection Keys for Userspace" support, we run into:
...
(gdb) PASS: gdb.arch/i386-pkru.exp: probe PKRU support
print $pkru^M
$2 = 1431655764^M
(gdb) FAIL: gdb.arch/i386-pkru.exp: pkru register
...

The test-case expects the $pkru register to have the default value 0, matching
the "init state" of 0 defined by the XSAVE hardware.

Since linux kernel version v4.9 containing commit acd547b29880 ("x86/pkeys:
Default to a restrictive init PKRU"), the register is set to 0x55555554 by
default (which matches the printed decimal value above).

Fix the FAIL by accepting this value for linux.

Tested on x86_64-linux.
gdb/testsuite/gdb.arch/i386-pkru.exp