All of lore.kernel.org
 help / color / mirror / Atom feed
* + i386-adjustments-to-page-table-dump-during-oops-v4.patch added to -mm tree
@ 2007-02-16 21:12 akpm
  0 siblings, 0 replies; only message in thread
From: akpm @ 2007-02-16 21:12 UTC (permalink / raw)
  To: mm-commits; +Cc: jbeulich, ak


The patch titled
     i386: adjustments to page table dump during oops (v4)
has been added to the -mm tree.  Its filename is
     i386-adjustments-to-page-table-dump-during-oops-v4.patch

*** Remember to use Documentation/SubmitChecklist when testing your code ***

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: i386: adjustments to page table dump during oops (v4)
From: "Jan Beulich" <jbeulich@novell.com>

- make the page table contents printing PAE capable
- make sure the address stored in current->thread.cr2 is unmodified
  from what was read from CR2
- don't call oops_may_print() multiple times, when one time suffices
- print pte even in highpte case, as long as the pte page isn't in
  actually in high memory (which is specifically the case for all page
  tables covering kernel space)

(Changes to v3: Use sizeof()*2 rather than the suggested sizeof()*4 for
printing width, use fixed 16-nibble width for PAE, and also apply the
max_low_pfn range check to the middle level lookup on PAE.)

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 arch/i386/mm/fault.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff -puN arch/i386/mm/fault.c~i386-adjustments-to-page-table-dump-during-oops-v4 arch/i386/mm/fault.c
--- a/arch/i386/mm/fault.c~i386-adjustments-to-page-table-dump-during-oops-v4
+++ a/arch/i386/mm/fault.c
@@ -535,8 +535,9 @@ no_context:
 		page = read_cr3();
 		page = ((__typeof__(page) *) __va(page))[address >> PGDIR_SHIFT];
 #ifdef CONFIG_X86_PAE
-		printk(KERN_ALERT "*pdpt = %0*Lx\n", sizeof(page)*4, (u64)page);
-		if (page & _PAGE_PRESENT) {
+		printk(KERN_ALERT "*pdpt = %016Lx\n", page);
+		if ((page >> PAGE_SHIFT) < max_low_pfn
+		    && page & _PAGE_PRESENT) {
 			page &= PAGE_MASK;
 			page = ((__typeof__(page) *) __va(page))[(address >> PMD_SHIFT)
 			                                         & (PTRS_PER_PMD - 1)];
@@ -558,7 +559,7 @@ no_context:
 			page &= PAGE_MASK;
 			page = ((__typeof__(page) *) __va(page))[(address >> PAGE_SHIFT)
 			                                         & (PTRS_PER_PTE - 1)];
-			printk(KERN_ALERT "*pte = %0*Lx\n", sizeof(page)*4, (u64)page);
+			printk(KERN_ALERT "*pte = %0*Lx\n", sizeof(page)*2, (u64)page);
 		}
 	}
 
_

Patches currently in -mm which might be from jbeulich@novell.com are

origin.patch
small-irq-management-simplification.patch
adjust-legacy-ide-resource-setting-v2.patch
i386-adjustments-to-page-table-dump-during-oops-v3.patch
i386-adjustments-to-page-table-dump-during-oops-v4.patch
x86-mtrr-range-check-correction.patch
x86-consolidate-smp_send_stop.patch
fix-i386-and-x86_64-fault-information-pollution.patch

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-02-16 21:12 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-16 21:12 + i386-adjustments-to-page-table-dump-during-oops-v4.patch added to -mm tree akpm

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.