diff options
author | Prarit Bhargava <prarit@redhat.com> | 2007-10-17 12:04:34 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@inhelltoy.tec.linutronix.de> | 2007-10-17 14:15:41 -0400 |
commit | 27eb0b288fb3b46350f3e6c2fad0b36937a4cc85 (patch) | |
tree | ccd2d7cc752036b1e3654ce6b984c885ab6a0629 /arch/x86 | |
parent | 509a80c49c512ac88bd67b981145f925a306111b (diff) |
x86: stop nmi softlockup warnings in show_mem()
When dumping memory via sysrq-m it is possible to take a bogus NMI
watchdog or softlockup watchdog because the dump can take a long time on
big memory systems.
Occasionally tickle the watchdog when doing the dump.
Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/mm/pgtable_32.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/mm/pgtable_32.c b/arch/x86/mm/pgtable_32.c index bbaa2b153934..be61a1d845a4 100644 --- a/arch/x86/mm/pgtable_32.c +++ b/arch/x86/mm/pgtable_32.c | |||
@@ -6,6 +6,7 @@ | |||
6 | #include <linux/kernel.h> | 6 | #include <linux/kernel.h> |
7 | #include <linux/errno.h> | 7 | #include <linux/errno.h> |
8 | #include <linux/mm.h> | 8 | #include <linux/mm.h> |
9 | #include <linux/nmi.h> | ||
9 | #include <linux/swap.h> | 10 | #include <linux/swap.h> |
10 | #include <linux/smp.h> | 11 | #include <linux/smp.h> |
11 | #include <linux/highmem.h> | 12 | #include <linux/highmem.h> |
@@ -39,6 +40,8 @@ void show_mem(void) | |||
39 | for_each_online_pgdat(pgdat) { | 40 | for_each_online_pgdat(pgdat) { |
40 | pgdat_resize_lock(pgdat, &flags); | 41 | pgdat_resize_lock(pgdat, &flags); |
41 | for (i = 0; i < pgdat->node_spanned_pages; ++i) { | 42 | for (i = 0; i < pgdat->node_spanned_pages; ++i) { |
43 | if (unlikely(i % MAX_ORDER_NR_PAGES == 0)) | ||
44 | touch_nmi_watchdog(); | ||
42 | page = pgdat_page_nr(pgdat, i); | 45 | page = pgdat_page_nr(pgdat, i); |
43 | total++; | 46 | total++; |
44 | if (PageHighMem(page)) | 47 | if (PageHighMem(page)) |