diff options
Diffstat (limited to 'tip-x86-boot-x86-KASLR-x86-power-Remove-x86-hibernation-restrictions.patch')
-rw-r--r-- | tip-x86-boot-x86-KASLR-x86-power-Remove-x86-hibernation-restrictions.patch | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/tip-x86-boot-x86-KASLR-x86-power-Remove-x86-hibernation-restrictions.patch b/tip-x86-boot-x86-KASLR-x86-power-Remove-x86-hibernation-restrictions.patch new file mode 100644 index 000000000..7d79fbcef --- /dev/null +++ b/tip-x86-boot-x86-KASLR-x86-power-Remove-x86-hibernation-restrictions.patch @@ -0,0 +1,131 @@ +From patchwork Sun Jun 26 11:01:18 2016 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [tip:x86/boot] x86/KASLR, + x86/power: Remove x86 hibernation restrictions +From: tip-bot for Jacob Shin <tipbot@zytor.com> +X-Patchwork-Id: 9199367 +Message-Id: <tip-65fe935dd2387a4faf15314c73f5e6d31ef0217e@git.kernel.org> +To: linux-tip-commits@vger.kernel.org +Cc: pavel@ucw.cz, linux-pm@vger.kernel.org, yinghai@kernel.org, + mingo@kernel.org, linux-kernel@vger.kernel.org, tglx@linutronix.de, + corbet@lwn.net, dvlasenk@redhat.com, sds@tycho.nsa.gov, + peterz@infradead.org, logang@deltatee.com, bhe@redhat.com, + torvalds@linux-foundation.org, bp@alien8.de, luto@kernel.org, + keescook@chromium.org, hpa@zytor.com, brgerst@gmail.com, + len.brown@intel.com +Date: Sun, 26 Jun 2016 04:01:18 -0700 + +Commit-ID: 65fe935dd2387a4faf15314c73f5e6d31ef0217e +Gitweb: http://git.kernel.org/tip/65fe935dd2387a4faf15314c73f5e6d31ef0217e +Author: Kees Cook <keescook@chromium.org> +AuthorDate: Mon, 13 Jun 2016 15:10:02 -0700 +Committer: Ingo Molnar <mingo@kernel.org> +CommitDate: Sun, 26 Jun 2016 12:32:03 +0200 + +x86/KASLR, x86/power: Remove x86 hibernation restrictions + +With the following fix: + + 70595b479ce1 ("x86/power/64: Fix crash whan the hibernation code passes control to the image kernel") + +... there is no longer a problem with hibernation resuming a +KASLR-booted kernel image, so remove the restriction. + +Signed-off-by: Kees Cook <keescook@chromium.org> +Cc: Andy Lutomirski <luto@kernel.org> +Cc: Baoquan He <bhe@redhat.com> +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: Jonathan Corbet <corbet@lwn.net> +Cc: Len Brown <len.brown@intel.com> +Cc: Linus Torvalds <torvalds@linux-foundation.org> +Cc: Linux PM list <linux-pm@vger.kernel.org> +Cc: Logan Gunthorpe <logang@deltatee.com> +Cc: Pavel Machek <pavel@ucw.cz> +Cc: Peter Zijlstra <peterz@infradead.org> +Cc: Stephen Smalley <sds@tycho.nsa.gov> +Cc: Thomas Gleixner <tglx@linutronix.de> +Cc: Yinghai Lu <yinghai@kernel.org> +Cc: linux-doc@vger.kernel.org +Link: http://lkml.kernel.org/r/20160613221002.GA29719@www.outflux.net +Signed-off-by: Ingo Molnar <mingo@kernel.org> +--- + Documentation/kernel-parameters.txt | 10 ++++------ + arch/x86/boot/compressed/kaslr.c | 7 ------- + kernel/power/hibernate.c | 6 ------ + 3 files changed, 4 insertions(+), 19 deletions(-) + +-- +To unsubscribe from this list: send the line "unsubscribe linux-pm" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + +diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt +index 82b42c9..fa8c6d4 100644 +--- a/Documentation/kernel-parameters.txt ++++ b/Documentation/kernel-parameters.txt +@@ -1803,12 +1803,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted. + js= [HW,JOY] Analog joystick + See Documentation/input/joystick.txt. + +- kaslr/nokaslr [X86] +- Enable/disable kernel and module base offset ASLR +- (Address Space Layout Randomization) if built into +- the kernel. When CONFIG_HIBERNATION is selected, +- kASLR is disabled by default. When kASLR is enabled, +- hibernation will be disabled. ++ nokaslr [KNL] ++ When CONFIG_RANDOMIZE_BASE is set, this disables ++ kernel and module base offset ASLR (Address Space ++ Layout Randomization). + + keepinitrd [HW,ARM] + +diff --git a/arch/x86/boot/compressed/kaslr.c b/arch/x86/boot/compressed/kaslr.c +index cfeb025..dff4217 100644 +--- a/arch/x86/boot/compressed/kaslr.c ++++ b/arch/x86/boot/compressed/kaslr.c +@@ -471,17 +471,10 @@ unsigned char *choose_random_location(unsigned long input, + unsigned long choice = output; + unsigned long random_addr; + +-#ifdef CONFIG_HIBERNATION +- if (!cmdline_find_option_bool("kaslr")) { +- warn("KASLR disabled: 'kaslr' not on cmdline (hibernation selected)."); +- goto out; +- } +-#else + if (cmdline_find_option_bool("nokaslr")) { + warn("KASLR disabled: 'nokaslr' on cmdline."); + goto out; + } +-#endif + + boot_params->hdr.loadflags |= KASLR_FLAG; + +diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c +index fca9254..9021387 100644 +--- a/kernel/power/hibernate.c ++++ b/kernel/power/hibernate.c +@@ -1154,11 +1154,6 @@ static int __init nohibernate_setup(char *str) + return 1; + } + +-static int __init kaslr_nohibernate_setup(char *str) +-{ +- return nohibernate_setup(str); +-} +- + static int __init page_poison_nohibernate_setup(char *str) + { + #ifdef CONFIG_PAGE_POISONING_ZERO +@@ -1182,5 +1177,4 @@ __setup("hibernate=", hibernate_setup); + __setup("resumewait", resumewait_setup); + __setup("resumedelay=", resumedelay_setup); + __setup("nohibernate", nohibernate_setup); +-__setup("kaslr", kaslr_nohibernate_setup); + __setup("page_poison=", page_poison_nohibernate_setup); |