Drop bad pte debug patches
Dave says there's changes upstream from Tejun that reworked the code so it is all using common code now.
This commit is contained in:
parent
f818e77232
commit
928ecc5e9d
@ -1,71 +0,0 @@
|
|||||||
Occasionally we see reports of page table corruption, and it's not clear why.
|
|
||||||
By printing out the hardware name, we could potentially see some patterns.
|
|
||||||
|
|
||||||
Signed-off-by: Dave Jones <davej@redhat.com>
|
|
||||||
|
|
||||||
--- linux.orig/include/asm-generic/bug.h
|
|
||||||
+++ linux/include/asm-generic/bug.h
|
|
||||||
@@ -55,6 +55,8 @@ struct bug_entry {
|
|
||||||
#define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while(0)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+void print_hardware_dmi_name(void);
|
|
||||||
+
|
|
||||||
/*
|
|
||||||
* WARN(), WARN_ON(), WARN_ON_ONCE, and so on can be used to report
|
|
||||||
* significant issues that need prompt attention if they should ever
|
|
||||||
--- linux.orig/kernel/panic.c
|
|
||||||
+++ linux/kernel/panic.c
|
|
||||||
@@ -391,6 +391,15 @@ void oops_exit(void)
|
|
||||||
kmsg_dump(KMSG_DUMP_OOPS);
|
|
||||||
}
|
|
||||||
|
|
||||||
+void print_hardware_dmi_name(void)
|
|
||||||
+{
|
|
||||||
+ const char *board;
|
|
||||||
+
|
|
||||||
+ board = dmi_get_system_info(DMI_PRODUCT_NAME);
|
|
||||||
+ if (board)
|
|
||||||
+ printk(KERN_WARNING "Hardware name: %s\n", board);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
#ifdef WANT_WARN_ON_SLOWPATH
|
|
||||||
struct slowpath_args {
|
|
||||||
const char *fmt;
|
|
||||||
@@ -400,13 +409,10 @@ struct slowpath_args {
|
|
||||||
static void warn_slowpath_common(const char *file, int line, void *caller,
|
|
||||||
unsigned taint, struct slowpath_args *args)
|
|
||||||
{
|
|
||||||
- const char *board;
|
|
||||||
-
|
|
||||||
printk(KERN_WARNING "------------[ cut here ]------------\n");
|
|
||||||
printk(KERN_WARNING "WARNING: at %s:%d %pS()\n", file, line, caller);
|
|
||||||
- board = dmi_get_system_info(DMI_PRODUCT_NAME);
|
|
||||||
- if (board)
|
|
||||||
- printk(KERN_WARNING "Hardware name: %s\n", board);
|
|
||||||
+
|
|
||||||
+ print_hardware_dmi_name();
|
|
||||||
|
|
||||||
if (args)
|
|
||||||
vprintk(args->fmt, args->args);
|
|
||||||
--- linux.orig/mm/memory.c
|
|
||||||
+++ linux/mm/memory.c
|
|
||||||
@@ -706,6 +706,8 @@ static void print_bad_pte(struct vm_area
|
|
||||||
"BUG: Bad page map in process %s pte:%08llx pmd:%08llx\n",
|
|
||||||
current->comm,
|
|
||||||
(long long)pte_val(pte), (long long)pmd_val(*pmd));
|
|
||||||
+ print_hardware_dmi_name();
|
|
||||||
+
|
|
||||||
if (page)
|
|
||||||
dump_page(page);
|
|
||||||
printk(KERN_ALERT
|
|
||||||
--- linux.orig/mm/page_alloc.c
|
|
||||||
+++ linux/mm/page_alloc.c
|
|
||||||
@@ -321,6 +321,7 @@ static void bad_page(struct page *page)
|
|
||||||
current->comm, page_to_pfn(page));
|
|
||||||
dump_page(page);
|
|
||||||
|
|
||||||
+ print_hardware_dmi_name();
|
|
||||||
print_modules();
|
|
||||||
dump_stack();
|
|
||||||
out:
|
|
@ -1,34 +0,0 @@
|
|||||||
From 3cd4fefa1d614debf75f059def34ac1aaaf96501 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Josh Boyer <jwboyer@redhat.com>
|
|
||||||
Date: Tue, 30 Apr 2013 14:01:57 -0400
|
|
||||||
Subject: [PATCH] When we encounter a bad PTE, print out what modules were
|
|
||||||
loaded, so we can see if there is a common driver potentially at fault.
|
|
||||||
|
|
||||||
Signed-off-by: Dave Jones <davej@redhat.com>
|
|
||||||
---
|
|
||||||
mm/memory.c | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/mm/memory.c b/mm/memory.c
|
|
||||||
index 6dc1882..99564df 100644
|
|
||||||
--- a/mm/memory.c
|
|
||||||
+++ b/mm/memory.c
|
|
||||||
@@ -57,6 +57,7 @@
|
|
||||||
#include <linux/swapops.h>
|
|
||||||
#include <linux/elf.h>
|
|
||||||
#include <linux/gfp.h>
|
|
||||||
+#include <linux/module.h>
|
|
||||||
#include <linux/migrate.h>
|
|
||||||
#include <linux/string.h>
|
|
||||||
|
|
||||||
@@ -720,6 +721,7 @@ static void print_bad_pte(struct vm_area_struct *vma, unsigned long addr,
|
|
||||||
if (vma->vm_file && vma->vm_file->f_op)
|
|
||||||
printk(KERN_ALERT "vma->vm_file->f_op->mmap: %pSR\n",
|
|
||||||
vma->vm_file->f_op->mmap);
|
|
||||||
+ print_modules();
|
|
||||||
dump_stack();
|
|
||||||
add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE);
|
|
||||||
}
|
|
||||||
--
|
|
||||||
1.8.1.4
|
|
||||||
|
|
@ -627,9 +627,6 @@ Patch09: upstream-reverts.patch
|
|||||||
|
|
||||||
# Standalone patches
|
# Standalone patches
|
||||||
|
|
||||||
#atch200: debug-bad-pte-dmi.patch
|
|
||||||
Patch201: debug-bad-pte-modules.patch
|
|
||||||
|
|
||||||
Patch390: defaults-acpi-video.patch
|
Patch390: defaults-acpi-video.patch
|
||||||
Patch396: acpi-sony-nonvs-blacklist.patch
|
Patch396: acpi-sony-nonvs-blacklist.patch
|
||||||
|
|
||||||
@ -1285,9 +1282,6 @@ ApplyOptionalPatch compile-fixes.patch
|
|||||||
# revert patches from upstream that conflict or that we get via other means
|
# revert patches from upstream that conflict or that we get via other means
|
||||||
ApplyOptionalPatch upstream-reverts.patch -R
|
ApplyOptionalPatch upstream-reverts.patch -R
|
||||||
|
|
||||||
#plyPatch debug-bad-pte-dmi.patch
|
|
||||||
ApplyPatch debug-bad-pte-modules.patch
|
|
||||||
|
|
||||||
# Architecture patches
|
# Architecture patches
|
||||||
# x86(-64)
|
# x86(-64)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user