diff options
Diffstat (limited to 'arch/xtensa/kernel')
-rw-r--r-- | arch/xtensa/kernel/ptrace.c | 17 | ||||
-rw-r--r-- | arch/xtensa/kernel/traps.c | 1 | ||||
-rw-r--r-- | arch/xtensa/kernel/vmlinux.lds.S | 5 |
3 files changed, 4 insertions, 19 deletions
diff --git a/arch/xtensa/kernel/ptrace.c b/arch/xtensa/kernel/ptrace.c index 14104ff63093..06a13d9b69db 100644 --- a/arch/xtensa/kernel/ptrace.c +++ b/arch/xtensa/kernel/ptrace.c | |||
@@ -50,18 +50,8 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
50 | switch (request) { | 50 | switch (request) { |
51 | case PTRACE_PEEKTEXT: /* read word at location addr. */ | 51 | case PTRACE_PEEKTEXT: /* read word at location addr. */ |
52 | case PTRACE_PEEKDATA: | 52 | case PTRACE_PEEKDATA: |
53 | { | 53 | ret = generic_ptrace_peekdata(child, addr, data); |
54 | unsigned long tmp; | ||
55 | int copied; | ||
56 | |||
57 | copied = access_process_vm(child, addr, &tmp, sizeof(tmp), 0); | ||
58 | ret = -EIO; | ||
59 | if (copied != sizeof(tmp)) | ||
60 | break; | ||
61 | ret = put_user(tmp,(unsigned long *) data); | ||
62 | |||
63 | goto out; | 54 | goto out; |
64 | } | ||
65 | 55 | ||
66 | /* Read the word at location addr in the USER area. */ | 56 | /* Read the word at location addr in the USER area. */ |
67 | 57 | ||
@@ -138,10 +128,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
138 | 128 | ||
139 | case PTRACE_POKETEXT: /* write the word at location addr. */ | 129 | case PTRACE_POKETEXT: /* write the word at location addr. */ |
140 | case PTRACE_POKEDATA: | 130 | case PTRACE_POKEDATA: |
141 | if (access_process_vm(child, addr, &data, sizeof(data), 1) | 131 | ret = generic_ptrace_pokedata(child, addr, data); |
142 | == sizeof(data)) | ||
143 | break; | ||
144 | ret = -EIO; | ||
145 | goto out; | 132 | goto out; |
146 | 133 | ||
147 | case PTRACE_POKEUSR: | 134 | case PTRACE_POKEUSR: |
diff --git a/arch/xtensa/kernel/traps.c b/arch/xtensa/kernel/traps.c index 693ab268485e..c5e62f9d9f50 100644 --- a/arch/xtensa/kernel/traps.c +++ b/arch/xtensa/kernel/traps.c | |||
@@ -482,6 +482,7 @@ void die(const char * str, struct pt_regs * regs, long err) | |||
482 | if (!user_mode(regs)) | 482 | if (!user_mode(regs)) |
483 | show_stack(NULL, (unsigned long*)regs->areg[1]); | 483 | show_stack(NULL, (unsigned long*)regs->areg[1]); |
484 | 484 | ||
485 | add_taint(TAINT_DIE); | ||
485 | spin_unlock_irq(&die_lock); | 486 | spin_unlock_irq(&die_lock); |
486 | 487 | ||
487 | if (in_interrupt()) | 488 | if (in_interrupt()) |
diff --git a/arch/xtensa/kernel/vmlinux.lds.S b/arch/xtensa/kernel/vmlinux.lds.S index bb3f1f3097a8..ac4ed52034db 100644 --- a/arch/xtensa/kernel/vmlinux.lds.S +++ b/arch/xtensa/kernel/vmlinux.lds.S | |||
@@ -191,10 +191,7 @@ SECTIONS | |||
191 | __initramfs_end = .; | 191 | __initramfs_end = .; |
192 | #endif | 192 | #endif |
193 | 193 | ||
194 | . = ALIGN(4096); | 194 | PERCPU(4096) |
195 | __per_cpu_start = .; | ||
196 | .data.percpu : { *(.data.percpu) } | ||
197 | __per_cpu_end = .; | ||
198 | 195 | ||
199 | 196 | ||
200 | /* We need this dummy segment here */ | 197 | /* We need this dummy segment here */ |