diff options
Diffstat (limited to 'arch/powerpc/kernel/hw_breakpoint.c')
-rw-r--r-- | arch/powerpc/kernel/hw_breakpoint.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/hw_breakpoint.c b/arch/powerpc/kernel/hw_breakpoint.c index 53cc9270aac8..53b9c1dfd7d9 100644 --- a/arch/powerpc/kernel/hw_breakpoint.c +++ b/arch/powerpc/kernel/hw_breakpoint.c | |||
@@ -211,9 +211,11 @@ int hw_breakpoint_handler(struct die_args *args) | |||
211 | int rc = NOTIFY_STOP; | 211 | int rc = NOTIFY_STOP; |
212 | struct perf_event *bp; | 212 | struct perf_event *bp; |
213 | struct pt_regs *regs = args->regs; | 213 | struct pt_regs *regs = args->regs; |
214 | #ifndef CONFIG_PPC_8xx | ||
214 | int stepped = 1; | 215 | int stepped = 1; |
215 | struct arch_hw_breakpoint *info; | ||
216 | unsigned int instr; | 216 | unsigned int instr; |
217 | #endif | ||
218 | struct arch_hw_breakpoint *info; | ||
217 | unsigned long dar = regs->dar; | 219 | unsigned long dar = regs->dar; |
218 | 220 | ||
219 | /* Disable breakpoints during exception handling */ | 221 | /* Disable breakpoints during exception handling */ |
@@ -257,6 +259,7 @@ int hw_breakpoint_handler(struct die_args *args) | |||
257 | (dar - bp->attr.bp_addr < bp->attr.bp_len))) | 259 | (dar - bp->attr.bp_addr < bp->attr.bp_len))) |
258 | info->type |= HW_BRK_TYPE_EXTRANEOUS_IRQ; | 260 | info->type |= HW_BRK_TYPE_EXTRANEOUS_IRQ; |
259 | 261 | ||
262 | #ifndef CONFIG_PPC_8xx | ||
260 | /* Do not emulate user-space instructions, instead single-step them */ | 263 | /* Do not emulate user-space instructions, instead single-step them */ |
261 | if (user_mode(regs)) { | 264 | if (user_mode(regs)) { |
262 | current->thread.last_hit_ubp = bp; | 265 | current->thread.last_hit_ubp = bp; |
@@ -280,6 +283,7 @@ int hw_breakpoint_handler(struct die_args *args) | |||
280 | perf_event_disable_inatomic(bp); | 283 | perf_event_disable_inatomic(bp); |
281 | goto out; | 284 | goto out; |
282 | } | 285 | } |
286 | #endif | ||
283 | /* | 287 | /* |
284 | * As a policy, the callback is invoked in a 'trigger-after-execute' | 288 | * As a policy, the callback is invoked in a 'trigger-after-execute' |
285 | * fashion | 289 | * fashion |