sync linux-2.6-debug-taint-vm.patch with f16

print modules when in bad_page()
This commit is contained in:
Dave Jones 2011-10-24 15:35:03 -04:00
parent 7eb4ded021
commit a38747fb2e
2 changed files with 19 additions and 30 deletions

View File

@ -1929,6 +1929,9 @@ fi
# and build.
%changelog
* Mon Oct 24 2011 Dave Jones <davej@redhat.com>
- Print modules list from bad_page()
* Mon Oct 24 2011 Josh Boyer <jwboyer@redhat.com> 2.6.40.7-3
- Backport 3 fixed from linux-next to fix dib0700 playback (rhbz 733827)

View File

@ -1,31 +1,20 @@
From b04c57d9dc889462951312be2ac81ff6c702e954 Mon Sep 17 00:00:00 2001
From: Kyle McMartin <kyle@phobos.i.jkkm.org>
Date: Wed, 8 Jul 2009 13:05:09 -0400
Subject: [PATCH 3/6] fedora: linux-2.6-debug-taint-vm.patch
---
kernel/panic.c | 4 +++-
mm/slab.c | 8 ++++----
mm/slub.c | 2 +-
4 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/kernel/panic.c b/kernel/panic.c
index 984b3ec..6d1c3be 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -199,6 +199,7 @@ const char *print_tainted(void)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 4e8985a..70d0853 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -318,6 +318,7 @@ static void bad_page(struct page *page)
current->comm, page_to_pfn(page));
dump_page(page);
return buf;
}
+EXPORT_SYMBOL(print_tainted);
int test_taint(unsigned flag)
{
+ print_modules();
dump_stack();
out:
/* Leave bad fields for debug, except PageBuddy could make trouble */
diff --git a/mm/slab.c b/mm/slab.c
index e74a16e..7bc287e 100644
index d96e223..6f8905b 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -1803,8 +1803,8 @@ static void check_poison_obj(struct kmem_cache *cachep, void *objp)
@@ -1886,8 +1886,8 @@ static void check_poison_obj(struct kmem_cache *cachep, void *objp)
/* Print header */
if (lines == 0) {
printk(KERN_ERR
@ -36,7 +25,7 @@ index e74a16e..7bc287e 100644
print_objinfo(cachep, objp, 0);
}
/* Hexdump the affected line */
@@ -2902,8 +2902,8 @@ static void check_slabp(struct kmem_cache *cachep, struct slab *slabp)
@@ -2985,8 +2985,8 @@ static void check_slabp(struct kmem_cache *cachep, struct slab *slabp)
if (entries != cachep->num - slabp->inuse) {
bad:
printk(KERN_ERR "slab: Internal list corruption detected in "
@ -48,10 +37,10 @@ index e74a16e..7bc287e 100644
i < sizeof(*slabp) + cachep->num * sizeof(kmem_bufctl_t);
i++) {
diff --git a/mm/slub.c b/mm/slub.c
index 819f056..8eff0f4 100644
index 35f351f..e7ccb39 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -433,7 +433,7 @@ static void slab_bug(struct kmem_cache *s, char *fmt, ...)
@@ -472,7 +472,7 @@ static void slab_bug(struct kmem_cache *s, char *fmt, ...)
va_end(args);
printk(KERN_ERR "========================================"
"=====================================\n");
@ -60,6 +49,3 @@ index 819f056..8eff0f4 100644
printk(KERN_ERR "----------------------------------------"
"-------------------------------------\n\n");
}
--
1.6.2.5