diff options
author | Ingo Molnar <mingo@elte.hu> | 2010-08-31 03:45:21 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-08-31 03:45:46 -0400 |
commit | daab7fc734a53fdeaf844b7c03053118ad1769da (patch) | |
tree | 575deb3cdcc6dda562acaed6f7c29bc81ae01cf2 /arch/microblaze/mm | |
parent | 774ea0bcb27f57b6fd521b3b6c43237782fed4b9 (diff) | |
parent | 2bfc96a127bc1cc94d26bfaa40159966064f9c8c (diff) |
Merge commit 'v2.6.36-rc3' into x86/memblock
Conflicts:
arch/x86/kernel/trampoline.c
mm/memblock.c
Merge reason: Resolve the conflicts, update to latest upstream.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/microblaze/mm')
-rw-r--r-- | arch/microblaze/mm/fault.c | 16 | ||||
-rw-r--r-- | arch/microblaze/mm/init.c | 7 |
2 files changed, 1 insertions, 22 deletions
diff --git a/arch/microblaze/mm/fault.c b/arch/microblaze/mm/fault.c index bab922993185..57bd2a09610c 100644 --- a/arch/microblaze/mm/fault.c +++ b/arch/microblaze/mm/fault.c | |||
@@ -37,10 +37,6 @@ | |||
37 | #include <linux/uaccess.h> | 37 | #include <linux/uaccess.h> |
38 | #include <asm/exceptions.h> | 38 | #include <asm/exceptions.h> |
39 | 39 | ||
40 | #if defined(CONFIG_KGDB) | ||
41 | int debugger_kernel_faults = 1; | ||
42 | #endif | ||
43 | |||
44 | static unsigned long pte_misses; /* updated by do_page_fault() */ | 40 | static unsigned long pte_misses; /* updated by do_page_fault() */ |
45 | static unsigned long pte_errors; /* updated by do_page_fault() */ | 41 | static unsigned long pte_errors; /* updated by do_page_fault() */ |
46 | 42 | ||
@@ -81,10 +77,6 @@ void bad_page_fault(struct pt_regs *regs, unsigned long address, int sig) | |||
81 | } | 77 | } |
82 | 78 | ||
83 | /* kernel has accessed a bad area */ | 79 | /* kernel has accessed a bad area */ |
84 | #if defined(CONFIG_KGDB) | ||
85 | if (debugger_kernel_faults) | ||
86 | debugger(regs); | ||
87 | #endif | ||
88 | die("kernel access of bad area", regs, sig); | 80 | die("kernel access of bad area", regs, sig); |
89 | } | 81 | } |
90 | 82 | ||
@@ -115,13 +107,6 @@ void do_page_fault(struct pt_regs *regs, unsigned long address, | |||
115 | if ((error_code & 0x13) == 0x13 || (error_code & 0x11) == 0x11) | 107 | if ((error_code & 0x13) == 0x13 || (error_code & 0x11) == 0x11) |
116 | is_write = 0; | 108 | is_write = 0; |
117 | 109 | ||
118 | #if defined(CONFIG_KGDB) | ||
119 | if (debugger_fault_handler && regs->trap == 0x300) { | ||
120 | debugger_fault_handler(regs); | ||
121 | return; | ||
122 | } | ||
123 | #endif /* CONFIG_KGDB */ | ||
124 | |||
125 | if (unlikely(in_atomic() || !mm)) { | 110 | if (unlikely(in_atomic() || !mm)) { |
126 | if (kernel_mode(regs)) | 111 | if (kernel_mode(regs)) |
127 | goto bad_area_nosemaphore; | 112 | goto bad_area_nosemaphore; |
@@ -226,7 +211,6 @@ good_area: | |||
226 | * make sure we exit gracefully rather than endlessly redo | 211 | * make sure we exit gracefully rather than endlessly redo |
227 | * the fault. | 212 | * the fault. |
228 | */ | 213 | */ |
229 | survive: | ||
230 | fault = handle_mm_fault(mm, vma, address, is_write ? FAULT_FLAG_WRITE : 0); | 214 | fault = handle_mm_fault(mm, vma, address, is_write ? FAULT_FLAG_WRITE : 0); |
231 | if (unlikely(fault & VM_FAULT_ERROR)) { | 215 | if (unlikely(fault & VM_FAULT_ERROR)) { |
232 | if (fault & VM_FAULT_OOM) | 216 | if (fault & VM_FAULT_OOM) |
diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c index 32a702b621c8..840026c5bc56 100644 --- a/arch/microblaze/mm/init.c +++ b/arch/microblaze/mm/init.c | |||
@@ -134,13 +134,8 @@ void __init setup_memory(void) | |||
134 | * for 4GB of memory, using 4kB pages), plus 1 page | 134 | * for 4GB of memory, using 4kB pages), plus 1 page |
135 | * (in case the address isn't page-aligned). | 135 | * (in case the address isn't page-aligned). |
136 | */ | 136 | */ |
137 | #ifndef CONFIG_MMU | 137 | map_size = init_bootmem_node(NODE_DATA(0), |
138 | map_size = init_bootmem_node(NODE_DATA(0), PFN_UP(TOPHYS((u32)klimit)), | ||
139 | min_low_pfn, max_low_pfn); | ||
140 | #else | ||
141 | map_size = init_bootmem_node(&contig_page_data, | ||
142 | PFN_UP(TOPHYS((u32)klimit)), min_low_pfn, max_low_pfn); | 138 | PFN_UP(TOPHYS((u32)klimit)), min_low_pfn, max_low_pfn); |
143 | #endif | ||
144 | memblock_reserve(PFN_UP(TOPHYS((u32)klimit)) << PAGE_SHIFT, map_size); | 139 | memblock_reserve(PFN_UP(TOPHYS((u32)klimit)) << PAGE_SHIFT, map_size); |
145 | 140 | ||
146 | /* free bootmem is whole main memory */ | 141 | /* free bootmem is whole main memory */ |