Re: [PATCH 2/4] x86: clear XD_DISABLED flag on Intel to regain NX

From: Andi Kleen
Date: Wed Nov 10 2010 - 11:12:07 EST


Kees Cook <kees.cook@xxxxxxxxxxxxx> writes:
> +
> +verify_cpu_clear_xd:
> + movl $MSR_IA32_MISC_ENABLE, %ecx
> + rdmsr
> + btrl $2, %edx # clear MSR_IA32_MISC_ENABLE_XD_DISABLE
> + jnc verify_cpu_check # only write MSR if bit was
> changed

Strictly it's still a bit dangerous to read this MSR without knowing
about the CPU for sure. If you guess wrong you'll die here.

I would rather move this code later into the early init code (before the
second mapping is set up, which is still in time). There the exception
handlers are up and you could handle a #GP if it happens.

-Andi

--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/