Commit b82f54f7 authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://bk.arm.linux.org.uk/linux-2.6-rmk

into ppc970.osdl.org:/home/torvalds/v2.6/linux
parents fa4b7cad 98f9485a
...@@ -238,8 +238,9 @@ void iounmap(volatile void __iomem *addr) ...@@ -238,8 +238,9 @@ void iounmap(volatile void __iomem *addr)
} }
if ((p->flags >> 20) && p->phys_addr < virt_to_phys(high_memory) - 1) { if ((p->flags >> 20) && p->phys_addr < virt_to_phys(high_memory) - 1) {
/* p->size includes the guard page, but cpa doesn't like that */
change_page_attr(virt_to_page(__va(p->phys_addr)), change_page_attr(virt_to_page(__va(p->phys_addr)),
p->size >> PAGE_SHIFT, (p->size - PAGE_SIZE) >> PAGE_SHIFT,
PAGE_KERNEL); PAGE_KERNEL);
global_flush_tlb(); global_flush_tlb();
} }
......
...@@ -198,9 +198,6 @@ int __init setup_early_printk(char *opt) ...@@ -198,9 +198,6 @@ int __init setup_early_printk(char *opt)
early_console = &early_serial_console; early_console = &early_serial_console;
} else if (!strncmp(buf, "vga", 3)) { } else if (!strncmp(buf, "vga", 3)) {
early_console = &early_vga_console; early_console = &early_vga_console;
} else {
early_console = NULL;
return -1;
} }
early_console_initialized = 1; early_console_initialized = 1;
register_console(early_console); register_console(early_console);
......
...@@ -917,7 +917,7 @@ void __init trap_init(void) ...@@ -917,7 +917,7 @@ void __init trap_init(void)
set_intr_gate(0,&divide_error); set_intr_gate(0,&divide_error);
set_intr_gate_ist(1,&debug,DEBUG_STACK); set_intr_gate_ist(1,&debug,DEBUG_STACK);
set_intr_gate_ist(2,&nmi,NMI_STACK); set_intr_gate_ist(2,&nmi,NMI_STACK);
set_intr_gate(3,&int3); set_system_gate(3,&int3);
set_system_gate(4,&overflow); /* int4-5 can be called from all */ set_system_gate(4,&overflow); /* int4-5 can be called from all */
set_system_gate(5,&bounds); set_system_gate(5,&bounds);
set_intr_gate(6,&invalid_op); set_intr_gate(6,&invalid_op);
......
...@@ -265,8 +265,9 @@ void iounmap(volatile void __iomem *addr) ...@@ -265,8 +265,9 @@ void iounmap(volatile void __iomem *addr)
unmap_vm_area(p); unmap_vm_area(p);
if ((p->flags >> 20) && if ((p->flags >> 20) &&
p->phys_addr + p->size - 1 < virt_to_phys(high_memory)) { p->phys_addr + p->size - 1 < virt_to_phys(high_memory)) {
/* p->size includes the guard page, but cpa doesn't like that */
change_page_attr(virt_to_page(__va(p->phys_addr)), change_page_attr(virt_to_page(__va(p->phys_addr)),
p->size >> PAGE_SHIFT, (p->size - PAGE_SIZE) >> PAGE_SHIFT,
PAGE_KERNEL); PAGE_KERNEL);
global_flush_tlb(); global_flush_tlb();
} }
......
...@@ -3,6 +3,10 @@ ...@@ -3,6 +3,10 @@
#include <linux/config.h> #include <linux/config.h>
#ifdef CONFIG_NUMA
#define NODES_SHIFT 6 #define NODES_SHIFT 6
#else
#define NODES_SHIFT 0
#endif
#endif #endif
...@@ -53,6 +53,13 @@ static inline int is_kernel_text(unsigned long addr) ...@@ -53,6 +53,13 @@ static inline int is_kernel_text(unsigned long addr)
return in_gate_area_no_task(addr); return in_gate_area_no_task(addr);
} }
static inline int is_kernel(unsigned long addr)
{
if (addr >= (unsigned long)_stext && addr <= (unsigned long)_end)
return 1;
return in_gate_area_no_task(addr);
}
/* expand a compressed symbol data into the resulting uncompressed string, /* expand a compressed symbol data into the resulting uncompressed string,
given the offset to where the symbol is in the compressed stream */ given the offset to where the symbol is in the compressed stream */
static unsigned int kallsyms_expand_symbol(unsigned int off, char *result) static unsigned int kallsyms_expand_symbol(unsigned int off, char *result)
...@@ -153,7 +160,8 @@ const char *kallsyms_lookup(unsigned long addr, ...@@ -153,7 +160,8 @@ const char *kallsyms_lookup(unsigned long addr,
namebuf[KSYM_NAME_LEN] = 0; namebuf[KSYM_NAME_LEN] = 0;
namebuf[0] = 0; namebuf[0] = 0;
if (all_var || is_kernel_text(addr) || is_kernel_inittext(addr)) { if ((all_var && is_kernel(addr)) ||
(!all_var && (is_kernel_text(addr) || is_kernel_inittext(addr)))) {
unsigned long symbol_end=0; unsigned long symbol_end=0;
/* do a binary search on the sorted kallsyms_addresses array */ /* do a binary search on the sorted kallsyms_addresses array */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment