forked from Minki/linux
25dfe47853
Add vmemmap in the list of randomized memory regions. The vmemmap region holds a representation of the physical memory (through a struct page array). An attacker could use this region to disclose the kernel memory layout (walking the page linked list). Signed-off-by: Thomas Garnier <thgarnie@google.com> Signed-off-by: Kees Cook <keescook@chromium.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: kernel-hardening@lists.openwall.com Link: http://lkml.kernel.org/r/1469635196-122447-1-git-send-email-thgarnie@google.com [ Minor edits. ] Signed-off-by: Ingo Molnar <mingo@kernel.org>
17 lines
385 B
C
17 lines
385 B
C
#ifndef _ASM_KASLR_H_
|
|
#define _ASM_KASLR_H_
|
|
|
|
unsigned long kaslr_get_random_long(const char *purpose);
|
|
|
|
#ifdef CONFIG_RANDOMIZE_MEMORY
|
|
extern unsigned long page_offset_base;
|
|
extern unsigned long vmalloc_base;
|
|
extern unsigned long vmemmap_base;
|
|
|
|
void kernel_randomize_memory(void);
|
|
#else
|
|
static inline void kernel_randomize_memory(void) { }
|
|
#endif /* CONFIG_RANDOMIZE_MEMORY */
|
|
|
|
#endif
|