[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1485942677-19973-6-git-send-email-mingo@kernel.org>
Date: Wed, 1 Feb 2017 10:51:17 +0100
From: Ingo Molnar <mingo@...nel.org>
To: linux-kernel@...r.kernel.org
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Andy Lutomirski <luto@...capital.net>,
Borislav Petkov <bp@...en8.de>,
"H . Peter Anvin" <hpa@...or.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Yinghai Lu <yinghai@...nel.org>
Subject: [PATCH 5/5] x86/boot: Fix pr_debug() API braindamage
From: Borislav Petkov <bp@...en8.de>
What looked like a straightforward conversion from printk(KERN_DEBUG, ...)
to pr_debug() broke the boot log output:
DMI: /M57SLI-S4, BIOS FF 01/24/2008
-e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
-e820: remove [mem 0x000a0000-0x000fffff] usable
+usable ==> reserved
+usable
e820: last_pfn = 0x230000 max_arch_pfn = 0x400000000
...
x86/PAT: Configuration [0-7]: WB WC UC- UC WB WC UC- WT
-e820: update [mem 0xd0000000-0xffffffff] usable ==> reserved
+usable ==> reserved
i.e. spurious (and nonsensical) kernel log entries were created...
We need a pr_debug_and_I_mean_it() function which does nothing but
printk(KERN_DEBUG...
Signed-off-by: Borislav Petkov <bp@...en8.de>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: Thomas Gleixner <tglx@...utronix.de>
Cc: linux-kernel@...r.kernel.org
[ Wrote changelog. ]
Signed-off-by: Ingo Molnar <mingo@...nel.org>
---
arch/x86/kernel/e820.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index e2fb20ac5135..6e9b26fa6d05 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -411,7 +411,7 @@ __e820__range_update(struct e820_table *table, u64 start, u64 size, enum e820_ty
size = ULLONG_MAX - start;
end = start + size;
- pr_debug("e820: update [mem %#010Lx-%#010Lx] ", start, end - 1);
+ printk(KERN_DEBUG "e820: update [mem %#010Lx-%#010Lx] ", start, end - 1);
e820_print_type(old_type);
pr_cont(" ==> ");
e820_print_type(new_type);
@@ -487,7 +487,7 @@ u64 __init e820__range_remove(u64 start, u64 size, enum e820_type old_type, bool
size = ULLONG_MAX - start;
end = start + size;
- pr_debug("e820: remove [mem %#010Lx-%#010Lx] ", start, end - 1);
+ printk(KERN_DEBUG "e820: remove [mem %#010Lx-%#010Lx] ", start, end - 1);
if (check_type)
e820_print_type(old_type);
pr_cont("\n");
@@ -1121,7 +1121,7 @@ void __init e820__reserve_resources_late(void)
if (start >= end)
continue;
- pr_debug("e820: reserve RAM buffer [mem %#010llx-%#010llx]\n", start, end);
+ printk(KERN_DEBUG "e820: reserve RAM buffer [mem %#010llx-%#010llx]\n", start, end);
reserve_region_with_split(&iomem_resource, start, end, "RAM buffer");
}
}
--
2.7.4
Powered by blists - more mailing lists