]> git.baikalelectronics.ru Git - kernel.git/commit
[S390] kprobes: defer setting of ctlblk state
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Mon, 22 Jun 2009 10:08:23 +0000 (12:08 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 22 Jun 2009 10:08:24 +0000 (12:08 +0200)
commitd8e913499f195450b49e5be31c0ce2a8734f11bc
treea4f3da66d0f4518d99e9eeb5fd4efc944d9b4d92
parent5ab09411984c40e23bd8c755010368892574bfb1
[S390] kprobes: defer setting of ctlblk state

get_krobe_ctlblk returns a per cpu kprobe control block which holds
the state of the current cpu wrt to kprobe.
When inserting/removing a kprobe the state of the cpu which replaces
the code is changed to KPROBE_SWAP_INST. This however is done when
preemption is still enabled. So the state of the current cpu doesn't
necessarily reflect the real state.
To fix this move the code that changes the state to non-preemptible
context.

Reported-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/kernel/kprobes.c