abrown opened issue #7445.
abrown edited issue #7445:
GitHub CI runners are showing some strange behavior: on certain runners (unknown which ones), the CPUID bits claim that MPK is supported, but running any MPK code (e.g.,
RDPKRU
) causes aSIGILL
crash. #7446 disables MPK until this is resolved.Some instances of this failure:
abrown commented on issue #7445:
Finally got a reproduction that includes the
lscpu
output: https://github.com/bytecodealliance/wasmtime/actions/runs/6722788583/job/18272718138?pr=7448#step:4:20. Something must be different about how thatAMD EPYC 7763
sets up its CPUID bits.
alexcrichton commented on issue #7445:
Nice! Seems like this should be easy enough to manage by updating the supported check to require Intel CPUs and filter out AMD ones then?
abrown commented on issue #7445:
That's an option; I was also thinking about looking up how the Linux kernel sets the
pku
flag. They probably have to deal with this exact issue there. There might even more special cases there to be aware of...
abrown commented on issue #7445:
Yeah, it appears that Intel and AMD differ on what is presented in that
CPUID
leaf:
- https://github.com/torvalds/linux/blob/8bc9e6515183935fa0cccaf67455c439afe4982b/arch/x86/include/asm/cpufeatures.h#L380-L383
- https://github.com/torvalds/linux/blob/8bc9e6515183935fa0cccaf67455c439afe4982b/tools/testing/selftests/mm/pkey-x86.h#L65C1-L66
- https://github.com/torvalds/linux/blob/8bc9e6515183935fa0cccaf67455c439afe4982b/tools/testing/selftests/kvm/include/x86_64/processor.h#L122-L155
nagisa commented on issue #7445:
I can reproduce this issue locally reliably on my 2nd generation EPYC and can test things out it helps anyway.
nagisa edited a comment on issue #7445:
I can reproduce this issue (the SIGILL) locally & reliably on my 2nd generation EPYC and can test things out it helps anyway.
abrown closed issue #7445:
GitHub CI runners are showing some strange behavior: on certain runners (unknown which ones), the CPUID bits claim that MPK is supported, but running any MPK code (e.g.,
RDPKRU
) causes aSIGILL
crash. #7446 disables MPK until this is resolved.Some instances of this failure:
Last updated: Nov 22 2024 at 17:03 UTC