Messages in this thread | | | Date | Tue, 3 Oct 2023 07:23:56 -0700 | Subject | Re: [PATCH] x86_64: test that userspace stack is in fact NX | From | Dave Hansen <> |
| |
On 10/3/23 06:00, Alexey Dobriyan wrote: > On Mon, Oct 02, 2023 at 07:23:10AM -0700, Dave Hansen wrote: >> Basically, could you spend a moment in the changelog to talk about: >> >> 1. 32-bit kernels on NX hardware >> and >> 2. 64-bit kernels on non-NX hardware > > Sure. My logic whas that i386 is dead arch, but this test is easy to > port to i386, only 2 simple functions.
I honestly don't feel strongly about it one way or the other. But whatever we do, let's explain it, please.
> I don't want to parse /proc/cpuinfo. If someone knows they're shipping > NX-incapable hardware, just let them disable the test.
Other than clearcpuid=nx, I don't _think_ we have any way to clear the X86_FEATURE_NX bit right now. That should mean that you can use regular old CPUID to see if the booted kernel supports NX. Perhaps something like what:
tools/testing/selftests/x86/amx.c
does with CPUID_LEAF1_ECX_XSAVE_MASK. That should be quite a bit easier than parsing /proc/cpuinfo.
If someone does use clearcpuid, then I think it's perfectly reasonable to fail the selftest.
| |