[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-da2b6fb990cf782b18952f534ec7323453bc4fc9@git.kernel.org>
Date: Tue, 14 Jan 2014 10:48:40 -0800
From: tip-bot for Kees Cook <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, hpa@...or.com, mingo@...nel.org,
keescook@...omium.org, tglx@...utronix.de, hpa@...ux.intel.com
Subject: [tip:x86/kaslr] x86, kaslr: Clarify RANDOMIZE_BASE_MAX_OFFSET
Commit-ID: da2b6fb990cf782b18952f534ec7323453bc4fc9
Gitweb: http://git.kernel.org/tip/da2b6fb990cf782b18952f534ec7323453bc4fc9
Author: Kees Cook <keescook@...omium.org>
AuthorDate: Tue, 10 Dec 2013 12:27:45 -0800
Committer: H. Peter Anvin <hpa@...ux.intel.com>
CommitDate: Tue, 14 Jan 2014 10:45:56 -0800
x86, kaslr: Clarify RANDOMIZE_BASE_MAX_OFFSET
The help text for RANDOMIZE_BASE_MAX_OFFSET was confusing. This has been
clarified, and updated to be an export-only tunable.
Signed-off-by: Kees Cook <keescook@...omium.org>
Link: http://lkml.kernel.org/r/20131210202745.GA2961@www.outflux.net
Acked-by: Ingo Molnar <mingo@...nel.org>
Signed-off-by: H. Peter Anvin <hpa@...ux.intel.com>
---
arch/x86/Kconfig | 29 ++++++++++++++++++-----------
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 596cd9e..5c9e19d 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1747,26 +1747,33 @@ config RANDOMIZE_BASE
possible. At best, due to page table layouts, 64-bit can use
9 bits of entropy and 32-bit uses 8 bits.
+ If unsure, say N.
+
config RANDOMIZE_BASE_MAX_OFFSET
- hex "Maximum ASLR offset allowed"
+ hex "Maximum kASLR offset allowed" if EXPERT
depends on RANDOMIZE_BASE
range 0x0 0x20000000 if X86_32
default "0x20000000" if X86_32
range 0x0 0x40000000 if X86_64
default "0x40000000" if X86_64
---help---
- Determines the maximal offset in bytes that will be applied to the
- kernel when Address Space Layout Randomization (ASLR) is active.
- Must be less than or equal to the actual physical memory on the
- system. This must be a multiple of CONFIG_PHYSICAL_ALIGN.
+ The lesser of RANDOMIZE_BASE_MAX_OFFSET and available physical
+ memory is used to determine the maximal offset in bytes that will
+ be applied to the kernel when kernel Address Space Layout
+ Randomization (kASLR) is active. This must be a multiple of
+ PHYSICAL_ALIGN.
+
+ On 32-bit this is limited to 512MiB by page table layouts. The
+ default is 512MiB.
- On 32-bit this is limited to 512MiB.
+ On 64-bit this is limited by how the kernel fixmap page table is
+ positioned, so this cannot be larger than 1GiB currently. Without
+ RANDOMIZE_BASE, there is a 512MiB to 1.5GiB split between kernel
+ and modules. When RANDOMIZE_BASE_MAX_OFFSET is above 512MiB, the
+ modules area will shrink to compensate, up to the current maximum
+ 1GiB to 1GiB split. The default is 1GiB.
- On 64-bit this is limited by how the kernel fixmap page table is
- positioned, so this cannot be larger that 1GiB currently. Normally
- there is a 512MiB to 1.5GiB split between kernel and modules. When
- this is raised above the 512MiB default, the modules area will
- shrink to compensate, up to the current maximum 1GiB to 1GiB split.
+ If unsure, leave at the default value.
# Relocation on x86 needs some additional build support
config X86_NEED_RELOCS
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists