提交 4d3eeeac 编写于 作者: P Paul Mundt 提交者: Linus Torvalds

[PATCH] avr32: fixup kprobes preemption handling

While working on SH kprobes, I noticed that avr32 got the preemption
handling wrong in the no probe case.  The idea is that upon entry of
kprobe_handler() preemption is disabled outright across the life of the
kprobe, only to be re-enabled in post_kprobe_handler().

However, in the event that the probe is never activated, there's never any
chance of hitting the post probe handler, which allows for the current
avr32 implementation to disable preemption indefinitely, as it's currently
missing a re-enable when no probe is activated.
Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 e9c1528a
...@@ -154,6 +154,7 @@ static int __kprobes kprobe_handler(struct pt_regs *regs) ...@@ -154,6 +154,7 @@ static int __kprobes kprobe_handler(struct pt_regs *regs)
return 1; return 1;
no_kprobe: no_kprobe:
preempt_enable_no_resched();
return ret; return ret;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册