diff options
Diffstat (limited to 'arch/arm26/kernel')
-rw-r--r-- | arch/arm26/kernel/armksyms.c | 2 | ||||
-rw-r--r-- | arch/arm26/kernel/irq.c | 6 | ||||
-rw-r--r-- | arch/arm26/kernel/ptrace.c | 15 | ||||
-rw-r--r-- | arch/arm26/kernel/traps.c | 1 |
4 files changed, 9 insertions, 15 deletions
diff --git a/arch/arm26/kernel/armksyms.c b/arch/arm26/kernel/armksyms.c index f735d7e018e4..fe1e3ceed7cb 100644 --- a/arch/arm26/kernel/armksyms.c +++ b/arch/arm26/kernel/armksyms.c @@ -107,8 +107,6 @@ EXPORT_SYMBOL(__bug); #endif EXPORT_SYMBOL(__bad_xchg); EXPORT_SYMBOL(__readwrite_bug); -EXPORT_SYMBOL(enable_irq); -EXPORT_SYMBOL(disable_irq); EXPORT_SYMBOL(set_irq_type); EXPORT_SYMBOL(pm_idle); EXPORT_SYMBOL(pm_power_off); diff --git a/arch/arm26/kernel/irq.c b/arch/arm26/kernel/irq.c index d53382c83bf9..2ffe695b062e 100644 --- a/arch/arm26/kernel/irq.c +++ b/arch/arm26/kernel/irq.c @@ -95,6 +95,11 @@ void disable_irq(unsigned int irq) desc->enabled = 0; spin_unlock_irqrestore(&irq_controller_lock, flags); } +EXPORT_SYMBOL(disable_irq); + +void disable_irq_nosync(unsigned int irq) __attribute__((alias("disable_irq"))); + +EXPORT_SYMBOL(disable_irq_nosync); /** * enable_irq - enable interrupt handling on an irq @@ -131,6 +136,7 @@ void enable_irq(unsigned int irq) } spin_unlock_irqrestore(&irq_controller_lock, flags); } +EXPORT_SYMBOL(enable_irq); int show_interrupts(struct seq_file *p, void *v) { diff --git a/arch/arm26/kernel/ptrace.c b/arch/arm26/kernel/ptrace.c index 416927956721..0fefb86970c6 100644 --- a/arch/arm26/kernel/ptrace.c +++ b/arch/arm26/kernel/ptrace.c @@ -531,7 +531,6 @@ static int ptrace_setfpregs(struct task_struct *tsk, void *ufp) long arch_ptrace(struct task_struct *child, long request, long addr, long data) { - unsigned long tmp; int ret; switch (request) { @@ -540,12 +539,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) */ case PTRACE_PEEKTEXT: case PTRACE_PEEKDATA: - ret = access_process_vm(child, addr, &tmp, - sizeof(unsigned long), 0); - if (ret == sizeof(unsigned long)) - ret = put_user(tmp, (unsigned long *) data); - else - ret = -EIO; + ret = generic_ptrace_peekdata(child, addr, data); break; case PTRACE_PEEKUSR: @@ -557,12 +551,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) */ case PTRACE_POKETEXT: case PTRACE_POKEDATA: - ret = access_process_vm(child, addr, &data, - sizeof(unsigned long), 1); - if (ret == sizeof(unsigned long)) - ret = 0; - else - ret = -EIO; + ret = generic_ptrace_pokedata(child, addr, data); break; case PTRACE_POKEUSR: diff --git a/arch/arm26/kernel/traps.c b/arch/arm26/kernel/traps.c index d594fb59e945..2911e2eae80e 100644 --- a/arch/arm26/kernel/traps.c +++ b/arch/arm26/kernel/traps.c @@ -185,6 +185,7 @@ NORET_TYPE void die(const char *str, struct pt_regs *regs, int err) printk("Internal error: %s: %x\n", str, err); printk("CPU: %d\n", smp_processor_id()); show_regs(regs); + add_taint(TAINT_DIE); printk("Process %s (pid: %d, stack limit = 0x%p)\n", current->comm, current->pid, end_of_stack(tsk)); |