Commit 099f318b authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds

[PATCH] x86_64: Don't allow kprobes on __switch_to

kprobes cannot deal with the funny calling conventions when it
runs on a different stack when it returns. If someone wants
to instrument context switch they can add a probe to schedule()
instead.

Cc: jkenisto@us.ibm.com, prasanna@in.ibm.com
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 16acc0cd
...@@ -516,8 +516,10 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long rsp, ...@@ -516,8 +516,10 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long rsp,
* This could still be optimized: * This could still be optimized:
* - fold all the options into a flag word and test it with a single test. * - fold all the options into a flag word and test it with a single test.
* - could test fs/gs bitsliced * - could test fs/gs bitsliced
*
* Kprobes not supported here. Set the probe on schedule instead.
*/ */
struct task_struct * __kprobes struct task_struct *
__switch_to(struct task_struct *prev_p, struct task_struct *next_p) __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
{ {
struct thread_struct *prev = &prev_p->thread, struct thread_struct *prev = &prev_p->thread,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment