linux/arch/x86/boot/compressed
Kees Cook a653f3563c x86, kaslr: Mix entropy sources together as needed
Depending on availability, mix the RDRAND and RDTSC entropy together with
XOR. Only when neither is available should the i8254 be used. Update
the Kconfig documentation to reflect this. Additionally, since bits
used for entropy is masked elsewhere, drop the needless masking in
the get_random_long(). Similarly, use the entire TSC, not just the low
32 bits.

Finally, to improve the starting entropy, do a simple hashing of a
build-time versions string and the boot-time boot_params structure for
some additional level of unpredictability.

Signed-off-by: Kees Cook <keescook@chromium.org>
Link: http://lkml.kernel.org/r/20131111222839.GA28616@www.outflux.net
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2013-11-11 22:29:44 -08:00
..
.gitignore x86, boot: add new generated files to the appropriate .gitignore files 2009-06-02 21:13:30 -07:00
aslr.c x86, kaslr: Mix entropy sources together as needed 2013-11-11 22:29:44 -08:00
cmdline.c x86, kaslr: Return location from decompress_kernel 2013-10-13 03:12:07 -07:00
cpuflags.c x86, boot: Rename get_flags() and check_flags() to *_cpuflags() 2013-10-13 04:08:56 -07:00
early_serial_console.c x86, boot: Exclude early_serial_console.c if can't use it. 2012-07-21 11:07:34 -07:00
eboot.c x86, efi: correct call to free_pages 2013-07-26 15:22:32 +01:00
eboot.h X86: Improve GOP detection in the EFI boot stub 2012-09-17 13:29:20 +01:00
efi_stub_32.S x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
efi_stub_64.S x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
head_32.S x86, kaslr: Return location from decompress_kernel 2013-10-13 03:12:07 -07:00
head_64.S x86, kaslr: Return location from decompress_kernel 2013-10-13 03:12:07 -07:00
Makefile x86, kaslr: Return location from decompress_kernel 2013-10-13 03:12:07 -07:00
misc.c x86, kaslr: Select random position from e820 maps 2013-10-13 03:12:19 -07:00
misc.h x86, kaslr: Select random position from e820 maps 2013-10-13 03:12:19 -07:00
mkpiggy.c x86, mkpiggy: Don't open code put_unaligned_le32() 2012-02-28 10:22:57 -08:00
string.c x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
vmlinux.lds.S x86, setup: Allow global variables and functions in the decompressor 2010-08-02 15:34:44 -07:00