aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel/single_step.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/tile/kernel/single_step.c')
-rw-r--r--arch/tile/kernel/single_step.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/tile/kernel/single_step.c b/arch/tile/kernel/single_step.c
index 84a729e06ec4..86df5a239b70 100644
--- a/arch/tile/kernel/single_step.c
+++ b/arch/tile/kernel/single_step.c
@@ -318,6 +318,14 @@ void single_step_once(struct pt_regs *regs)
318" .popsection\n" 318" .popsection\n"
319 ); 319 );
320 320
321 /*
322 * Enable interrupts here to allow touching userspace and the like.
323 * The callers expect this: do_trap() already has interrupts
324 * enabled, and do_work_pending() handles functions that enable
325 * interrupts internally.
326 */
327 local_irq_enable();
328
321 if (state == NULL) { 329 if (state == NULL) {
322 /* allocate a page of writable, executable memory */ 330 /* allocate a page of writable, executable memory */
323 state = kmalloc(sizeof(struct single_step_state), GFP_KERNEL); 331 state = kmalloc(sizeof(struct single_step_state), GFP_KERNEL);