diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-10-12 09:05:39 -0400 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-10-12 09:05:39 -0400 | 
| commit | a9b9e81c915e4a57ac3b21d1a7fa7ff184639780 (patch) | |
| tree | 98304395fbb5b9c74fca35b196cd414c1949f280 /arch/m32r/kernel | |
| parent | a8b71a2810386a5ac8f43d2095fe3355f0d8db37 (diff) | |
| parent | fd048088306656824958e7783ffcee27e241b361 (diff) | |
Merge branch 'linus' into x86/memory-corruption-check
Diffstat (limited to 'arch/m32r/kernel')
| -rw-r--r-- | arch/m32r/kernel/entry.S | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/head.S | 1 | ||||
| -rw-r--r-- | arch/m32r/kernel/irq.c | 6 | ||||
| -rw-r--r-- | arch/m32r/kernel/m32r_ksyms.c | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/process.c | 30 | ||||
| -rw-r--r-- | arch/m32r/kernel/smp.c | 4 | ||||
| -rw-r--r-- | arch/m32r/kernel/smpboot.c | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/time.c | 5 | ||||
| -rw-r--r-- | arch/m32r/kernel/traps.c | 8 | 
9 files changed, 15 insertions, 45 deletions
| diff --git a/arch/m32r/kernel/entry.S b/arch/m32r/kernel/entry.S index d4eaa2fd1818..612d35b082a6 100644 --- a/arch/m32r/kernel/entry.S +++ b/arch/m32r/kernel/entry.S | |||
| @@ -143,7 +143,7 @@ ret_from_intr: | |||
| 143 | and3 r4, r4, #0x8000 ; check BSM bit | 143 | and3 r4, r4, #0x8000 ; check BSM bit | 
| 144 | #endif | 144 | #endif | 
| 145 | beqz r4, resume_kernel | 145 | beqz r4, resume_kernel | 
| 146 | ENTRY(resume_userspace) | 146 | resume_userspace: | 
| 147 | DISABLE_INTERRUPTS(r4) ; make sure we don't miss an interrupt | 147 | DISABLE_INTERRUPTS(r4) ; make sure we don't miss an interrupt | 
| 148 | ; setting need_resched or sigpending | 148 | ; setting need_resched or sigpending | 
| 149 | ; between sampling and the iret | 149 | ; between sampling and the iret | 
| diff --git a/arch/m32r/kernel/head.S b/arch/m32r/kernel/head.S index dab7436d7bbe..40180778a5c7 100644 --- a/arch/m32r/kernel/head.S +++ b/arch/m32r/kernel/head.S | |||
| @@ -29,7 +29,6 @@ __INITDATA | |||
| 29 | .global _end | 29 | .global _end | 
| 30 | ENTRY(stext) | 30 | ENTRY(stext) | 
| 31 | ENTRY(_stext) | 31 | ENTRY(_stext) | 
| 32 | ENTRY(startup_32) | ||
| 33 | /* Setup up the stack pointer */ | 32 | /* Setup up the stack pointer */ | 
| 34 | LDIMM (r0, spi_stack_top) | 33 | LDIMM (r0, spi_stack_top) | 
| 35 | LDIMM (r1, spu_stack_top) | 34 | LDIMM (r1, spu_stack_top) | 
| diff --git a/arch/m32r/kernel/irq.c b/arch/m32r/kernel/irq.c index d0c5b0b7da2f..2aeae4670098 100644 --- a/arch/m32r/kernel/irq.c +++ b/arch/m32r/kernel/irq.c | |||
| @@ -22,9 +22,6 @@ | |||
| 22 | #include <linux/module.h> | 22 | #include <linux/module.h> | 
| 23 | #include <asm/uaccess.h> | 23 | #include <asm/uaccess.h> | 
| 24 | 24 | ||
| 25 | atomic_t irq_err_count; | ||
| 26 | atomic_t irq_mis_count; | ||
| 27 | |||
| 28 | /* | 25 | /* | 
| 29 | * Generic, controller-independent functions: | 26 | * Generic, controller-independent functions: | 
| 30 | */ | 27 | */ | 
| @@ -63,9 +60,6 @@ int show_interrupts(struct seq_file *p, void *v) | |||
| 63 | seq_putc(p, '\n'); | 60 | seq_putc(p, '\n'); | 
| 64 | skip: | 61 | skip: | 
| 65 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); | 62 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); | 
| 66 | } else if (i == NR_IRQS) { | ||
| 67 | seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count)); | ||
| 68 | seq_printf(p, "MIS: %10u\n", atomic_read(&irq_mis_count)); | ||
| 69 | } | 63 | } | 
| 70 | return 0; | 64 | return 0; | 
| 71 | } | 65 | } | 
| diff --git a/arch/m32r/kernel/m32r_ksyms.c b/arch/m32r/kernel/m32r_ksyms.c index 16bcb189a383..22624b51d4d3 100644 --- a/arch/m32r/kernel/m32r_ksyms.c +++ b/arch/m32r/kernel/m32r_ksyms.c | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #include <asm/delay.h> | 14 | #include <asm/delay.h> | 
| 15 | #include <asm/irq.h> | 15 | #include <asm/irq.h> | 
| 16 | #include <asm/tlbflush.h> | 16 | #include <asm/tlbflush.h> | 
| 17 | #include <asm/pgtable.h> | ||
| 17 | 18 | ||
| 18 | /* platform dependent support */ | 19 | /* platform dependent support */ | 
| 19 | EXPORT_SYMBOL(boot_cpu_data); | 20 | EXPORT_SYMBOL(boot_cpu_data); | 
| @@ -65,6 +66,7 @@ EXPORT_SYMBOL(memset); | |||
| 65 | EXPORT_SYMBOL(copy_page); | 66 | EXPORT_SYMBOL(copy_page); | 
| 66 | EXPORT_SYMBOL(clear_page); | 67 | EXPORT_SYMBOL(clear_page); | 
| 67 | EXPORT_SYMBOL(strlen); | 68 | EXPORT_SYMBOL(strlen); | 
| 69 | EXPORT_SYMBOL(empty_zero_page); | ||
| 68 | 70 | ||
| 69 | EXPORT_SYMBOL(_inb); | 71 | EXPORT_SYMBOL(_inb); | 
| 70 | EXPORT_SYMBOL(_inw); | 72 | EXPORT_SYMBOL(_inw); | 
| diff --git a/arch/m32r/kernel/process.c b/arch/m32r/kernel/process.c index a689e2978b6e..5be4faaf5b1c 100644 --- a/arch/m32r/kernel/process.c +++ b/arch/m32r/kernel/process.c | |||
| @@ -35,8 +35,6 @@ | |||
| 35 | 35 | ||
| 36 | #include <linux/err.h> | 36 | #include <linux/err.h> | 
| 37 | 37 | ||
| 38 | static int hlt_counter=0; | ||
| 39 | |||
| 40 | /* | 38 | /* | 
| 41 | * Return saved PC of a blocked thread. | 39 | * Return saved PC of a blocked thread. | 
| 42 | */ | 40 | */ | 
| @@ -48,31 +46,16 @@ unsigned long thread_saved_pc(struct task_struct *tsk) | |||
| 48 | /* | 46 | /* | 
| 49 | * Powermanagement idle function, if any.. | 47 | * Powermanagement idle function, if any.. | 
| 50 | */ | 48 | */ | 
| 51 | void (*pm_idle)(void) = NULL; | 49 | static void (*pm_idle)(void) = NULL; | 
| 52 | EXPORT_SYMBOL(pm_idle); | ||
| 53 | 50 | ||
| 54 | void (*pm_power_off)(void) = NULL; | 51 | void (*pm_power_off)(void) = NULL; | 
| 55 | EXPORT_SYMBOL(pm_power_off); | 52 | EXPORT_SYMBOL(pm_power_off); | 
| 56 | 53 | ||
| 57 | void disable_hlt(void) | ||
| 58 | { | ||
| 59 | hlt_counter++; | ||
| 60 | } | ||
| 61 | |||
| 62 | EXPORT_SYMBOL(disable_hlt); | ||
| 63 | |||
| 64 | void enable_hlt(void) | ||
| 65 | { | ||
| 66 | hlt_counter--; | ||
| 67 | } | ||
| 68 | |||
| 69 | EXPORT_SYMBOL(enable_hlt); | ||
| 70 | |||
| 71 | /* | 54 | /* | 
| 72 | * We use this is we don't have any better | 55 | * We use this is we don't have any better | 
| 73 | * idle routine.. | 56 | * idle routine.. | 
| 74 | */ | 57 | */ | 
| 75 | void default_idle(void) | 58 | static void default_idle(void) | 
| 76 | { | 59 | { | 
| 77 | /* M32R_FIXME: Please use "cpu_sleep" mode. */ | 60 | /* M32R_FIXME: Please use "cpu_sleep" mode. */ | 
| 78 | cpu_relax(); | 61 | cpu_relax(); | 
| @@ -260,15 +243,6 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long spu, | |||
| 260 | return 0; | 243 | return 0; | 
| 261 | } | 244 | } | 
| 262 | 245 | ||
| 263 | /* | ||
| 264 | * Capture the user space registers if the task is not running (in user space) | ||
| 265 | */ | ||
| 266 | int dump_task_regs(struct task_struct *tsk, elf_gregset_t *regs) | ||
| 267 | { | ||
| 268 | /* M32R_FIXME */ | ||
| 269 | return 1; | ||
| 270 | } | ||
| 271 | |||
| 272 | asmlinkage int sys_fork(unsigned long r0, unsigned long r1, unsigned long r2, | 246 | asmlinkage int sys_fork(unsigned long r0, unsigned long r1, unsigned long r2, | 
| 273 | unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, | 247 | unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, | 
| 274 | struct pt_regs regs) | 248 | struct pt_regs regs) | 
| diff --git a/arch/m32r/kernel/smp.c b/arch/m32r/kernel/smp.c index 7577f971ea4e..929e5c9d3ad9 100644 --- a/arch/m32r/kernel/smp.c +++ b/arch/m32r/kernel/smp.c | |||
| @@ -84,7 +84,7 @@ void smp_send_timer(void); | |||
| 84 | void smp_ipi_timer_interrupt(struct pt_regs *); | 84 | void smp_ipi_timer_interrupt(struct pt_regs *); | 
| 85 | void smp_local_timer_interrupt(void); | 85 | void smp_local_timer_interrupt(void); | 
| 86 | 86 | ||
| 87 | void send_IPI_allbutself(int, int); | 87 | static void send_IPI_allbutself(int, int); | 
| 88 | static void send_IPI_mask(cpumask_t, int, int); | 88 | static void send_IPI_mask(cpumask_t, int, int); | 
| 89 | unsigned long send_IPI_mask_phys(cpumask_t, int, int); | 89 | unsigned long send_IPI_mask_phys(cpumask_t, int, int); | 
| 90 | 90 | ||
| @@ -722,7 +722,7 @@ void smp_local_timer_interrupt(void) | |||
| 722 | * ---------- --- -------------------------------------------------------- | 722 | * ---------- --- -------------------------------------------------------- | 
| 723 | * | 723 | * | 
| 724 | *==========================================================================*/ | 724 | *==========================================================================*/ | 
| 725 | void send_IPI_allbutself(int ipi_num, int try) | 725 | static void send_IPI_allbutself(int ipi_num, int try) | 
| 726 | { | 726 | { | 
| 727 | cpumask_t cpumask; | 727 | cpumask_t cpumask; | 
| 728 | 728 | ||
| diff --git a/arch/m32r/kernel/smpboot.c b/arch/m32r/kernel/smpboot.c index 2c03ac1d005f..fc2994811f15 100644 --- a/arch/m32r/kernel/smpboot.c +++ b/arch/m32r/kernel/smpboot.c | |||
| @@ -498,6 +498,8 @@ static void __init smp_online(void) | |||
| 498 | { | 498 | { | 
| 499 | int cpu_id = smp_processor_id(); | 499 | int cpu_id = smp_processor_id(); | 
| 500 | 500 | ||
| 501 | notify_cpu_starting(cpu_id); | ||
| 502 | |||
| 501 | local_irq_enable(); | 503 | local_irq_enable(); | 
| 502 | 504 | ||
| 503 | /* Get our bogomips. */ | 505 | /* Get our bogomips. */ | 
| diff --git a/arch/m32r/kernel/time.c b/arch/m32r/kernel/time.c index 994cc1556355..6ea017727cce 100644 --- a/arch/m32r/kernel/time.c +++ b/arch/m32r/kernel/time.c | |||
| @@ -34,7 +34,6 @@ | |||
| 34 | #include <asm/hw_irq.h> | 34 | #include <asm/hw_irq.h> | 
| 35 | 35 | ||
| 36 | #ifdef CONFIG_SMP | 36 | #ifdef CONFIG_SMP | 
| 37 | extern void send_IPI_allbutself(int, int); | ||
| 38 | extern void smp_local_timer_interrupt(void); | 37 | extern void smp_local_timer_interrupt(void); | 
| 39 | #endif | 38 | #endif | 
| 40 | 39 | ||
| @@ -188,7 +187,7 @@ static long last_rtc_update = 0; | |||
| 188 | * timer_interrupt() needs to keep up the real-time clock, | 187 | * timer_interrupt() needs to keep up the real-time clock, | 
| 189 | * as well as call the "do_timer()" routine every clocktick | 188 | * as well as call the "do_timer()" routine every clocktick | 
| 190 | */ | 189 | */ | 
| 191 | irqreturn_t timer_interrupt(int irq, void *dev_id) | 190 | static irqreturn_t timer_interrupt(int irq, void *dev_id) | 
| 192 | { | 191 | { | 
| 193 | #ifndef CONFIG_SMP | 192 | #ifndef CONFIG_SMP | 
| 194 | profile_tick(CPU_PROFILING); | 193 | profile_tick(CPU_PROFILING); | 
| @@ -228,7 +227,7 @@ irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
| 228 | return IRQ_HANDLED; | 227 | return IRQ_HANDLED; | 
| 229 | } | 228 | } | 
| 230 | 229 | ||
| 231 | struct irqaction irq0 = { | 230 | static struct irqaction irq0 = { | 
| 232 | .handler = timer_interrupt, | 231 | .handler = timer_interrupt, | 
| 233 | .flags = IRQF_DISABLED, | 232 | .flags = IRQF_DISABLED, | 
| 234 | .mask = CPU_MASK_NONE, | 233 | .mask = CPU_MASK_NONE, | 
| diff --git a/arch/m32r/kernel/traps.c b/arch/m32r/kernel/traps.c index 46159a4e644b..03b14e55cd89 100644 --- a/arch/m32r/kernel/traps.c +++ b/arch/m32r/kernel/traps.c | |||
| @@ -61,7 +61,7 @@ extern unsigned long eit_vector[]; | |||
| 61 | ((unsigned long)func - (unsigned long)eit_vector - entry*4)/4 \ | 61 | ((unsigned long)func - (unsigned long)eit_vector - entry*4)/4 \ | 
| 62 | + 0xff000000UL | 62 | + 0xff000000UL | 
| 63 | 63 | ||
| 64 | void set_eit_vector_entries(void) | 64 | static void set_eit_vector_entries(void) | 
| 65 | { | 65 | { | 
| 66 | extern void default_eit_handler(void); | 66 | extern void default_eit_handler(void); | 
| 67 | extern void system_call(void); | 67 | extern void system_call(void); | 
| @@ -121,9 +121,9 @@ void __init trap_init(void) | |||
| 121 | cpu_init(); | 121 | cpu_init(); | 
| 122 | } | 122 | } | 
| 123 | 123 | ||
| 124 | int kstack_depth_to_print = 24; | 124 | static int kstack_depth_to_print = 24; | 
| 125 | 125 | ||
| 126 | void show_trace(struct task_struct *task, unsigned long *stack) | 126 | static void show_trace(struct task_struct *task, unsigned long *stack) | 
| 127 | { | 127 | { | 
| 128 | unsigned long addr; | 128 | unsigned long addr; | 
| 129 | 129 | ||
| @@ -224,7 +224,7 @@ bad: | |||
| 224 | printk("\n"); | 224 | printk("\n"); | 
| 225 | } | 225 | } | 
| 226 | 226 | ||
| 227 | DEFINE_SPINLOCK(die_lock); | 227 | static DEFINE_SPINLOCK(die_lock); | 
| 228 | 228 | ||
| 229 | void die(const char * str, struct pt_regs * regs, long err) | 229 | void die(const char * str, struct pt_regs * regs, long err) | 
| 230 | { | 230 | { | 
