lkml.org 
[lkml]   [2013]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[RFC PATCH 1/3] x86, boot: Move setup_bios_corruption_check() later
Date
From: "H. Peter Anvin" <hpa@linux.intel.com>

setup_bios_corruption_check() tries to claim any low memory regions
that we haven't already reserved. Make sure we reserve any low memory
regions that we intend to either use or know/assume a priori is bad
*before* we initialize the checker.

Stable team note: adding this to the list to consider for stable
because it generates user-visible nuisance dmesg warnings in some
configurations. However, it is not urgent and should be allowed to
percolate in Linus' tree for a bit first.

Reported-by: Olof Johansson <olof@lixom.net>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/528168CB.7070602@linux.intel.com
Cc: <stable@vger.kernel.org> v3.9+ [not urgent]
---
arch/x86/kernel/setup.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index f0de629..8c01d6e 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -1080,10 +1080,6 @@ void __init setup_arch(char **cmdline_p)
/* preallocate 4k for mptable mpc */
early_reserve_e820_mpc_new();

-#ifdef CONFIG_X86_CHECK_BIOS_CORRUPTION
- setup_bios_corruption_check();
-#endif
-
#ifdef CONFIG_X86_32
printk(KERN_DEBUG "initial memory mapped: [mem 0x00000000-%#010lx]\n",
(max_pfn_mapped<<PAGE_SHIFT) - 1);
@@ -1100,6 +1096,14 @@ void __init setup_arch(char **cmdline_p)

setup_real_mode();

+ /*
+ * At this point we should have reserved any low memory regions
+ * we need to reserve.
+ */
+#ifdef CONFIG_X86_CHECK_BIOS_CORRUPTION
+ setup_bios_corruption_check();
+#endif
+
memblock_set_current_limit(get_max_mapped());
dma_contiguous_reserve(0);

--
1.8.3.1


\
 
 \ /
  Last update: 2013-11-12 01:41    [W:0.052 / U:0.168 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site