diff options
author | Kees Cook <keescook@chromium.org> | 2013-10-10 17:18:13 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2013-10-13 03:12:02 -0700 |
commit | dd78b97367bd575918204cc89107c1479d3fc1a7 (patch) | |
tree | 145b40fe13f64045d0a5e1063ac17357e9fad0de /arch/x86/boot/compressed/cpuflags.c | |
parent | d751c169e9a6f0f853346f1184881422bd10b3c2 (diff) | |
download | linux-stable-dd78b97367bd575918204cc89107c1479d3fc1a7.tar.gz linux-stable-dd78b97367bd575918204cc89107c1479d3fc1a7.tar.bz2 linux-stable-dd78b97367bd575918204cc89107c1479d3fc1a7.zip |
x86, boot: Move CPU flags out of cpucheck
Refactor the CPU flags handling out of the cpucheck routines so that
they can be reused by the future ASLR routines (in order to detect CPU
features like RDRAND and RDTSC).
This reworks has_eflag() and has_fpu() to be used on both 32-bit and
64-bit, and refactors the calls to cpuid to make them PIC-safe on 32-bit.
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: http://lkml.kernel.org/r/1381450698-28710-2-git-send-email-keescook@chromium.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/boot/compressed/cpuflags.c')
-rw-r--r-- | arch/x86/boot/compressed/cpuflags.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/x86/boot/compressed/cpuflags.c b/arch/x86/boot/compressed/cpuflags.c new file mode 100644 index 000000000000..931cba6a4bb0 --- /dev/null +++ b/arch/x86/boot/compressed/cpuflags.c @@ -0,0 +1,12 @@ +#ifdef CONFIG_RANDOMIZE_BASE + +#include "../cpuflags.c" + +bool has_cpuflag(int flag) +{ + get_flags(); + + return test_bit(flag, cpu.flags); +} + +#endif |