commit 49d859d78c 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>
44 lines
1.3 KiB
Makefile
44 lines
1.3 KiB
Makefile
#
|
|
# Makefile for x86-compatible CPU details, features and quirks
|
|
#
|
|
|
|
# Don't trace early stages of a secondary CPU boot
|
|
ifdef CONFIG_FUNCTION_TRACER
|
|
CFLAGS_REMOVE_common.o = -pg
|
|
CFLAGS_REMOVE_perf_event.o = -pg
|
|
endif
|
|
|
|
# Make sure load_percpu_segment has no stackprotector
|
|
nostackp := $(call cc-option, -fno-stack-protector)
|
|
CFLAGS_common.o := $(nostackp)
|
|
|
|
obj-y := intel_cacheinfo.o scattered.o topology.o
|
|
obj-y += proc.o capflags.o powerflags.o common.o
|
|
obj-y += vmware.o hypervisor.o sched.o mshyperv.o
|
|
obj-y += rdrand.o
|
|
|
|
obj-$(CONFIG_X86_32) += bugs.o
|
|
obj-$(CONFIG_X86_64) += bugs_64.o
|
|
|
|
obj-$(CONFIG_CPU_SUP_INTEL) += intel.o
|
|
obj-$(CONFIG_CPU_SUP_AMD) += amd.o
|
|
obj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o
|
|
obj-$(CONFIG_CPU_SUP_CENTAUR) += centaur.o
|
|
obj-$(CONFIG_CPU_SUP_TRANSMETA_32) += transmeta.o
|
|
obj-$(CONFIG_CPU_SUP_UMC_32) += umc.o
|
|
|
|
obj-$(CONFIG_PERF_EVENTS) += perf_event.o
|
|
|
|
obj-$(CONFIG_X86_MCE) += mcheck/
|
|
obj-$(CONFIG_MTRR) += mtrr/
|
|
|
|
obj-$(CONFIG_X86_LOCAL_APIC) += perfctr-watchdog.o
|
|
|
|
quiet_cmd_mkcapflags = MKCAP $@
|
|
cmd_mkcapflags = $(PERL) $(srctree)/$(src)/mkcapflags.pl $< $@
|
|
|
|
cpufeature = $(src)/../../include/asm/cpufeature.h
|
|
|
|
targets += capflags.c
|
|
$(obj)/capflags.c: $(cpufeature) $(src)/mkcapflags.pl FORCE
|
|
$(call if_changed,mkcapflags)
|