aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2011-07-31 14:02:19 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-10-21 09:17:12 -0700
commit8b9b3bf4e79b8f41fa910932885526c2d1083af9 (patch)
tree13ccd050915a838b801c99aaf5a06a4a6c89bdc6 /arch/x86/include
parent5faf9fc361bac926a2f9efe6018fdc16c0e7dad8 (diff)
downloadkernel_samsung_crespo-8b9b3bf4e79b8f41fa910932885526c2d1083af9.tar.gz
kernel_samsung_crespo-8b9b3bf4e79b8f41fa910932885526c2d1083af9.tar.bz2
kernel_samsung_crespo-8b9b3bf4e79b8f41fa910932885526c2d1083af9.zip
x86, random: Verify RDRAND functionality and allow it to be disabled
commit 49d859d78c5aeb998b6936fcb5f288f78d713489 upstream. If the CPU declares that RDRAND is available, go through a guranteed reseed sequence, and make sure that it is actually working (producing data.) If it does not, disable the CPU feature flag. Allow RDRAND to be disabled on the command line (as opposed to at compile time) for a user who has special requirements with regards to random numbers. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Cc: Matt Mackall <mpm@selenic.com> Cc: Herbert Xu <herbert@gondor.apana.org.au> Cc: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/x86/include')
-rw-r--r--arch/x86/include/asm/archrandom.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/include/asm/archrandom.h b/arch/x86/include/asm/archrandom.h
index b7b5bc02e36..0d9ec770f2f 100644
--- a/arch/x86/include/asm/archrandom.h
+++ b/arch/x86/include/asm/archrandom.h
@@ -70,4 +70,6 @@ GET_RANDOM(arch_get_random_int, unsigned int, RDRAND_INT, ASM_NOP3);
#endif /* CONFIG_ARCH_RANDOM */
+extern void x86_init_rdrand(struct cpuinfo_x86 *c);
+
#endif /* ASM_X86_ARCHRANDOM_H */